QA@IT

【急ぎです!】SQL文を実行できたと証明する方法を教えて下さい!

5092 PV

2月からITエンジニアとして研修を受けている者です。

最初の研修として、テキストに書いてあるSQLの問題を解いてOracle SQL Developer上で実行し、そのコードを提出するというものがありました。

そちらに関しては、全て添削をして頂き、終了したのですが、今日になって、実行出来ないということになり、責められました。

確かに、今日同じコードを実行しエラーが出るのを確認しましたが、私がその問題を解いた時はきちんと実行できるのを確認したことを記憶しています。

私は「Oracle SQL Developer上で実行できるのを確認してから提出した」と主張しましたが、信じてもらえず、何か証明する方法はないかと模索しております。

テキストの問題は、booksテーブルのISBNコード(isbn列)の先頭に、固定値で「ISBN」を追加するというものです。

isbn列のデータ型はCHAR(17)で、
下記のコードを提出しました。

UPDATE
books
SET
isbn = CONCAT('ISBN', isbn)
;

ただ、自宅で予習した際はエラーが発生し、列の定義をvarchar(2000)に変更したのですが、会社で実行した際はそのまま実行出来たので、列の定義が変更されていた可能性があります。

責られている点は、提出したコードでエラーが出ることではなく、「コードを実行せずに提出した」というです。

自身が実行せずに提出したのなら、反省して、二度と同じことをしないようにしようと思えますが、一方的に決めつけられて、信じてもらえず、理不尽さを感じております。

明日3/9の9:30までにきちんとOracle SQL Developer上で実行したと証明したいです。

私も方法がないか情報収集しますが、こういったことに詳しい方、アドバイスを頂けましたら幸いです。

何卒よろしくお願い致します。

  • そういえば、SQL DeveloperってSQL履歴ありませんでしたっけ。結果までは残ってないと思いましたが。 -
  • 残念ながら、SQL履歴には残っていませんでした。 -

回答

責られている点は、提出したコードでエラーが出ることではなく、「コードを実行せずに提出した」というです。

こういうことであれば実行結果を付けて提出しなければいけなかったのではないでしょうか?
正常終了する場合とエラーが発生する場合の両方がそろっているとかなりよかったと思います。

編集 履歴 (0)
  • ご回答ありがとうございます。
    実行結果を各自で確認した上で、コードを提出するというかたちです。
    私はISBNコードの先頭にISBNという文字が結合されたのを確認した上で提出しましたが、今となっては、スクリーンショットも一緒に取るなど証拠となるものを記録することが出来れば良かったのにと思っております。
    -

結局エラーからそのコードに問題があったのかなかったのか、そしてそれを理解しているのかの方が重要でしょう。
エビデンスが無いならばやってないと言われても仕方がないですね。
研修ではなくユーザーに提供した後に問題が発覚したと考えてみてください。
実際にコードに問題がある場合、「やった」「やってない」で腑に落ちないのならば検証不足だったと捉えれば良いかと思います。

REDOログが残っていればLogminer使って辿ることは可能かもしれませんが、
手間を考えると現実的ではないですね。

isbn列が「CHAR(17)」ならば、4文字追加すれば21文字になるので、Trimしていなければ桁あふれになるような気がします。
レコードが1件も無い状態ならば、そのupdate文は成功するでしょう。
更新された内容は確認したんでしょうか。

isbn列が「VARCHAR(17)」だった場合は、
末尾空白が含まれずに4桁増えるので元のデータが13桁以下ならば成功します。
ただしいつかは桁数があふれるので1回目にうまくいったからといって2回目もうまくいく保証がありません。
ISBNは13桁なので普通に考えれば2回実行したらエラーになるでしょう。
現在のデータが既に頭に'ISBN'がついていて17文字ならデータ不良なんではないですかね。

信じてもらえず憤る気持ちはわからないでもないですが、機能が提供できていたのか否か、どうすれば本番でそのようなことが起きるのを減らせるか、そういう方向で考えた方が研修としてはよいでしょう。

編集 履歴 (0)
  • ご回答頂きまして、ありがとうございます。
    13文字の先頭にISBNが付いたことを確認してから提出したのですが、キャプチャを取るなどして何か証拠となるものを取っておくことも大切なのだと感じました。予測ですが、型が変更されていたのだと思います。研修中に今回の経験をしたことで、どのような工夫をしたらこのような事を減らせるのかと考える機会が出来たと思えました。

    ありがとうございました。
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。