• ベストアンサー

エラーを起こす方法

初心者です。バッチプログラムの単体テストで、異常ケースでエラーを起こさせたいのですが、どのように実行したらいいのかわからず困っています。プログラムの内容は、Aテーブルのデータを全件、同じ構造をしたBテーブルに登録するというものです。ユニークキーのデータを追加して一意制約エラーをおこすにも、そもそもAテーブルにユニークキーのデータを追加して登録することができないと思うのですが、どのようにやるのですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • mitoneko
  • ベストアンサー率58% (469/798)
回答No.3

 前後の処理があるとは思いますが、もし、コピー前にBテープルのデータを削除しているなら、いったんその処理だけ止めておきます。コメントアウトするも良し、デバッグモードを組み込んでおくもよし。  Bテーブルに事前にAテーブルにあるデータとユニークキーが同じデータを一つ登録しておきます。  後は、プログラムを実行してみればOK。  Aテーブルの内容を事前にBテーブルにコピーしておいても可ですが、途中でエラーになった時の挙動の確認が出来なくなるかな。まぁ、エラーになった時の処理内容によりますが。

その他の回答 (2)

  • kamoz
  • ベストアンサー率22% (2/9)
回答No.2

社内SEをしています。 私なら、Aテーブルを2回読み込みます。 それなら、重複キーでOMITされるんじゃないでしょうか?

tohiyu
質問者

お礼

ありがとうございます。 説明が足りなくてすみません。読み込み前にBテーブルを初期化していました。

回答No.1

Bテーブルに、例外を生成するトリガーを張っちゃうとか。 しかし、そもそも起こりえない条件なら、机上チェックで良いんじゃない?

tohiyu
質問者

お礼

ありがとうございます。 例外を生成するトリガーを張るというのが、私には難しくてちょっとよくわかりませんで・・・。

関連するQ&A