1
シナリオ:
私はDUP_VAL_ON_INDEXエラーコードのための定数を定義したい:特定のエラー・コードをoracleデータベースからプログラムでどのように取得しますか?
GCN_DUP_VAL_ON_INDEX CONSTANT NUMBER := -1;
しかし、私はプログラム的に値を設定したいと思います:
GCN_DUP_VAL_ON_INDEX CONSTANT NUMBER := DUP_VAL_ON_INDEX.ERRCODE;
はこれを行う方法がありますこのようなカスタム関数を作成していますか?:
CREATE OR REPLACE FUNCTION GET_DUP_VAL_ERR_CODE
RETURN INTEGER
IS
BEGIN
raise dup_val_on_index;
EXCEPTION
WHEN OTHERS THEN
RETURN SQLCODE;
END;
/
何のため?非常に反対のことを行うのがより一般的です - エラーコードの定数例外を定義してください... –
forallループ中にerorrsを一括して収集し、各例外に対してロギングを行います。エラーコードを使用して、次に何をするかを決定します。 – ScrappyDev
@scrappythenellの 'forall'は、そのデータセット内の単一のレコードではなく、データセット全体に対して単一のエラーを発生させます。 1つのレコードに対して何か他のことをしたい場合はどうなりますか?そのような状況は可能ですか? – Ben