「Oracle」トリガー(trigger)を作成する方法

2021年8月30日

書式
1.CREATE OR REPLACE TRIGGER トリガー名 操作xxx
2.DECLARE 変数名 テーブル.項目%TYPE
3.BEGIN xxx END
使用例

--トリガー名の定義
CREATE OR REPLACE TRIGGER EVAL_CHANGE_TRIGGER
  AFTER INSERT OR UPDATE OR DELETE
  --各行ごとの操作が鳥がの対象
  ON USER_TBL FOR EACH ROW
DECLARE
  --変数名cft
  cft  USER_TBL_LOG.action%TYPE;
BEGIN
  --トリガー insert
  IF INSERTING THEN
    cft := 'Insert操作を行いました';
  --トリガー update
  ELSIF UPDATING THEN
    cft := 'Update操作を行いました';
  --トリガー delete
  ELSIF DELETING THEN
    cft := 'Delete操作を行いました';
  END IF;
  
  --外部のプロシジャーを実行
  INSERT INTO USER_TBL_LOG (opdate, action)
    VALUES (SYSDATE, cft);
END;

 

Oracle

Posted by arkgame