ページの先頭行へ戻る
Linkexpress Transactional Replication option V5.0L60 説明書
FUJITSU Software

A.3.3 Oracleデータベースの場合

Oracleデータベースにおける、トリガの利用方法および定義例を説明します。

A.3.3.1 利用方法

Oracleデータベースにおけるトリガの利用方法を説明します。

格納データの加工(種別:BEFORE)

“:NEW.”で修飾した列の値を加工し、その結果を同じ列へ代入します。

反映処理の迂回(種別:BEFORE)

“:NEW.”で修飾した列の値を判定し、迂回条件を満たす場合に、エラー番号-20999を返します。

A.3.3.2 定義例

Oracleデータベースにおける、INSERT文に対するトリガの定義例を説明します。

格納データの加工(種別:BEFORE)

トリガの定義例

CREATE OR REPLACE TRIGGER TRG1
BEFORE INSERT ON TBL1
FOR EACH ROW
BEGIN
:NEW.ITEM1 := :NEW.ITEM1 * 2; -- 加工
END;

表TBL1の列ITEM1(:NEW.ITEM1)を加工し、その結果を同じ列に代入します。

反映処理の迂回(種別:BEFORE)

トリガの定義例

CREATE OR REPLACE TRIGGER TRG1
BEFORE INSERT ON TBL1
FOR EACH ROW
BEGIN
IF(:NEW.ITEM1 <0 ) THEN -- 迂回判定
Raise_application_error(-20999, ‘user definition error’); -- エラー番号を返す
END IF;
END;

表TBL1の列ITEM1(:NEW.ITEM1)を判定します。迂回条件を満たす場合、エラー番号-20999を返してトリガを終了します。