1
トリガーを作成しようとしていますが、バインドを毎回要求しています。表示されるウィンドウで[適用]をクリックすると、それが欲しいと思うように動作します...しかし、それはエラーを記録します...バインドを求めるOracle PL/SQLトリガー
私のトリガーは、クライアントがアクティブかどうかを確認し、変更有効であることが判明した場合...
CREATE Trigger Client_Activity
BEFORE Insert or Update or Delete ON Client
FOR EACH ROW
DECLARE
VAR_AC char(2);
BEGIN
IF UPDATING THEN
SELECT Activity INTO VAR_AC
FROM Client_Additionals
WHERE Activity = :Old.Activity;
IF Activity = 'AC'
THEN Raise_Application_Error(-20999, 'active')
END IF;
END;
/
ORACLE VERSION 12はあなたのトリガーに2個の構文エラーを持っているのsqldeveloper
入れ 'SET DEFONE OFF;' 'CREATE TRIGGERを....'ステートメント、およびF5キーを押して、 'ランscript'前 – krokodilko
@a_horse_with_no_name - コードにバインド変数がある場合と同じです。異なるフロントエンドはそれを別々に行います。 SQL \ * Plusは* Bind変数 "OLD"が宣言されていないと言っています*。 SQL Developerは、 "Enter binds"というポップアップ・ウィンドウを開き、「Old」の値を待機します。私はToadがSQL Developerに似た何かをすると信じています。 – mathguy
@krokodilko - 私はそれが問題を治すとは思わない...それはなぜだろうか?この問題は、置換変数ではなく(誤った、または間違った情報の)バインド変数です。 – mathguy