私は以下の作業を行っています。Oracleトリガー作成の問題
STAFF_TRIGGERという名前のPL/SQLトリガーをSTAFF表に作成します。この トリガーは、挿入または更新ごとに実行されます。 a。挿入の場合、 このトリガーでは、新しいSTAFF.STAFF_ID値、ユーザーは MOD_USER、システム日付はMOD_TIMESTAMPに設定して、データの をSTAFF_LOGに記録する必要があります。 b。更新の場合、このトリガーは、 の前のSTAFF値を対応するSTAFF_LOG列に とし、MOD_USERとMOD_TIMESTAMPを記録するようにします。
これまでのところ、これは私が持っているものです。私はOracleデータベースExpress Editionを使用しています。
create trigger staff_trigger
after insert or update on staff
for each row
begin
if inserting then
insert into staff_log (staff_id, mod_user, mod_timestamp)
values(new.employee_id, new.last_name, sysdate);
end if;
if updating then
insert into staff_log (mod_user, mod_timestamp)
values(new.last_name, sysdate);
end if;
end;
コードを実行すると、以下のエラーが表示されます。
ERROR at line 9: PL/SQL: SQL Statement ignored7. if inserting then
8. insert into staff_log (staff_id, mod_user, mod_timestamp)
9. values(new.employee_id, new.last_name, sysdate);
10. end if;
何が原因である可能性がありますか?
ヒント:あなたはあなたのポスト内のコードを入れているときは、コードを選択し、 '{}'のように見えるボタンをクリックしてください。これにより、コードが書式設定され、読みやすくなります。 –