oracle触発器で記録表に記録を追加する問題

1239 ワード

指定されたユーザーの下の指定表に対して操作記録を作成したいです。ロゴテーブルがあります。
フィールド          タイプ
id。          number
obajid       varrrhar 2(50)   --操作テーブルのIDフィールド
objname     varrrhar 2(20)   --操作表の名前
optine      varcher 2(20)   --操作タイプ(添削)
createtime  ダテ           --ログ作成時間
需要とは、ユーザーの下の指定テーブルを削除して修正すると、ロゴテーブルに操作記録を追加するトリガーを作成することです。インターネットで探してみましたが、必要な答えがなかなか見つかりませんでした。どうすれば操作表のID番号と進行中の操作が自動的に分かりますか?
具体的な操作は以下の通りです。
次のようにトリガーを作成します。

create or replace trigger tr_test 
after update or delete or insert 
on t_test 
for each row 
begin 
  if inserting then 
  insert into t_logs  values(seq_logid.nextval,:new.id,'t_test','insert',sysdate); 
  elsif updating then 
  insert into t_logs  values(seq_logid.nextval,:old.id,'t_test','update',sysdate); 
  elsif deleting then 
  insert into t_logs  values(seq_logid.nextval,:old.id,'t_test','delete',sysdate); 
  end if; 
end;[
tr.test:トリガーの名前
トンホtest:その表をトリガーする
for each row:行段トリガー
begin....end:具体的な操作手順
ここで、new.idはinsert後のID番号を指し、old.idは更新または削除後のID番号を指します。seqlogid.nextvalはシリアルナンバーを指しています。seq_というq名を確立したいです。ロゴのシリアル番号