【发布时间】:2021-07-15 09:03:13
【问题描述】:
我想创建一个触发器,根据其他表 (TABLE1) 中的列值更新表 (TABLE2) 中的行。 需要更新哪一行取决于TBL1的ID。
CREATE OR REPLACE TRIGGER INSERT_PAGE
BEFORE UPDATE OR INSERT
ON TABLE1
FOR EACH ROW
BEGIN
IF INSERTING THEN
INSERT INTO TABLE2 (TBL1ID,STEP,PAGE) VALUES
(:NEW.TBL1ID,:NEW.STEP,15);
ELSIF UPDATING and :NEW.STATE='APPROVED' THEN
UPDATE TABLE2
SET PAGE=16 AND STEP1='TEXT123'
WHERE TBL1ID =TABLE1.TBL1ID;
END IF;
END;
有人可以帮我创建一个带有更新语句的触发器吗? 这也是一个好方法吗?
所以我有两个表,table1 中的列状态在整个过程中都在变化。 根据 table1 中 state 列的变化,我想更改或更好地说更新 table 2 中的行并设置一些列,例如表 2 中的 PAGE 和 STATE 取决于表 1 中的列值 STATE。 我不希望每次更新 TABLE 1 时都创建一个新行,而应该只更新相应的行。
【问题讨论】:
-
你真正需要什么,你能用一些数据解释一下吗?
-
当然我编辑了我的问题:)