0
私は2つのテーブルがあります。条件付きのアップデートを使用してOracle SQLトリガー
cost_bank
(私はトリガーを配置したい場所を、これがある)master_data
を(この表は私がチェックするために必要な情報を持っています)
は私が新たに挿入されたcost_bank.work_code
がmaster_data.charge_type = 'EX'
とmaster_data
テーブルにあるときに実行cost_bank
の「挿入後」トリガーを構築したいです。このシナリオが当てはまる場合は、ID
で指定できる新しく追加された行のみを更新するように、master_data.r_cost_center
の値がcost_bank.cost_center
のcost_bank
にトリガーします。ここで
は、私がこれまで持っているものです。
CREATE OR REPLACE TRIGGER expense_charge_cost_center
AFTER INSERT ON cost_bank FOR EACH ROW
WHEN (new.work_code in (select work_code from master_data where charge_type = 'EX'))
BEGIN
update cost_bank set cost_center = (select r_cost_center
from master_data where work_code = new.work_code) where id = new.id;
END;
任意の洞察力はあなたが同じテーブルを変更したい場合は、あなたが前に挿入トリガーたい