単純なトリガーを作成しようとしていますが、エラーが発生しました。私はインターネットで検索しましたが、解決策を見つけることができませんでした。この問題について私を助けてくれますか?Oracle SP2-0552:バインド変数 "NEW"が宣言されていません
create trigger ProcessTigger before insert on T039
for each row
declare consecutivo int; idconsecutivo int; maxconsecutivo int;
begin
select t326c004 into consecutivo from T326 where t326c003 = 'T039' and t326c002 = :new.t039c004;
if consecutivo is not null
then
consecutivo :=consecutivo+1;
select t326c001 into idconsecutivo from T326 where t326c002 = :new.t039c004 and t326c003=T039;
update T326 set t326c004 = consecutivo where t326c001=idconsecutivo and t326c003=T039;
else
select max(t039c003) into maxconsecutivo from T039 where t071c002=:new.t039c004;
if maxconsecutivo is not null
then consecutivo := maxconsecutivo+1;
else consecutivo:=1;
end if;
insert into T326
(t326c002,t326c003,t326c004)values(:new.t039c004,'T039',consecutivo);
end if;
end;
ERROR:
SP2-0552:バインド変数 "NEW" が宣言されていません。
これはどちらですか? ORA-04071:トリガーにBEFORE/AFTER/INSTEAD OF句がありません。またはSP2-0552、バインド変数 "NEW"は宣言されていませんか? Oracleは一度に1つのエラーをスローします。 – mathguy
申し訳ありません私は質問のタイトルに間違っていました。問題は、またはSP2-0552でした。バインド変数 "NEW"は宣言されていません。 –
あなたの投稿の下に小さな「edit」リンクを使って編集してください。問題に合わせてタイトルを変更できます。 – mathguy