PL/SQLでREPRACE INTO構文と同様の処理を作成
PL/SQLでREPRACE INTO構文と同様の処理を作成
別のテーブルにレコードを投入する処理を実行するトリガを作成したのですが、
プライマリ・キーが重複するレコードの投入時に、一意制約でエラーになってしまいます。
トリガの作為としましては、プライマリキーが重複する際には上書きさせたいのですが、この場合、PLSQLではどのようなコマンドがあるのでしょうか?
(mySQLのREPLACE INTO と同様の処理を行うコマンドを想定しています)
↓下記のINSERT INO の箇所をREPLACE INTOと同様の処理を行うコマンドにしたいと思っております
CREATE OR REPLACE TRIGGER TRI_TEST
after update of TRI_NAME ,TRI_CALLED on cp_MV_TABLE
FOR EACH ROW
begin
if (:old.TRI_NAME != :new.TRI_NAME or :old.TRI_CALLED != :new.TRI_CALLED ) THEN
INSERT INTO TR_RUS_TABLE
(
TRI_NO ,
TRI_DATE ,
TRI_NAME ,
TRI_CALLED
)
values
(
:new.TRI_NO ,
:new.TRI_DATE ,
:new.TRI_NAME ,
:new.TRI_CALLED
);
end if;
end;
/
お礼
ありがとうございました。