While the code itself was correct, the comments attached to the names of columns in logtab were not correct. Specifically, I wrote this:
, created_on /* column type is VARCHAR2(30) */ , created_by) /* column type is DATE */
when I should have written:
, created_on /* column type is DATE */ , created_by) /* column type is VARCHAR2(30) */
Ironically (and believe you me, very irritatingly), I did not simply include the CREATE TABLE DDL for logtab, because I wanted to make it harder for a player to copy/paste the code and simply run it to get the answer. The table was already created in my schema, so when I compiled this package and tested the choices, everything was fine. Argh!If you created the table according to these comments, then any attempt to insert a row into the table would raise an Oracle error (unless your Oracle schema name can be converted implicitly to a date - and what's the chance of that?). So the following choice, which we scored as "correct", is actually incorrect: "Replace NULL with -1403. Execute the block and a row will be inserted into logtab; then the change will be committed." (I will refer to this choice below as BADCHOICE) There was another choice that was scored as correct, and it remains correct, because under that scenario, no insert was ever attempted: "Run the block unchanged. No new row will be inserted into logtab." Many, many players wrote to us, having noticed this discrepancy between comment and actual usage. I congratulate all of you on your close reading of our quizzes. We certainly can't "sneak" anything by you! I also apologize to everyone. It is hard enough when you are presented with a long, complicated quiz. To then discover a mistake inside of it, well, that can be, and I am sure was to many, very frustrating. So this is what we did to fix our mistake:
- Fix the question so that it no longer has this problem.It is vitally important that our database of questions and answers does not have mistakes.
- Everyone (321 players) who did not mark BADCHOICE as correct now have their answer changed to "correct".
- The scores of those same people are increased to reflect this change.
- Rankings are refreshed.
Player "MarcJT" was the first to report this mistake. Nice work, Marc, and you win your choice of an O''Reilly e-book.