【发布时间】:2018-11-21 11:33:28
【问题描述】:
我需要创建一个触发器,在插入或删除员工(EMPLOYERS TABLE)时,来自表 SHOPS UPDATE 的属性 EMPTOTAL。
EMPLOYERS 表有一个名为 SHOP 的字段(和外键)引用 SHOPS 表。
我知道它应该与此类似,但我的练习中没有任何示例涉及超过 1 个表格。
CREATE OR REPLACE TRIGGER UPD_EMPTOTAL BEFORE INSERT OR DELETE ON EMPLOYERS FOR EACH ROW
DECLARE
BEGIN
IF INSERTING THEN
UPDATE SHOPS SET EMPTOTAL=EMPTOTAL+1;
ELSIF DELETING THEN
UPDATE SHOPS SET EMPTOTAL=EMPTOTAL-1;
END IF;
END;
(我已经尝试过其他方法,例如 UPDATE 语句或为商店声明变量,但我不清楚,所以我只是在这里解析了我最确定的代码)。
【问题讨论】:
-
因此,如果您知道有一个
shop列构成了两个表之间的关系....更新语句可能应该对该列有一个where子句和相应的值从触发行的pseudorecord?