ID -name - parent act
1 computer 1 E
2 chemicals 2 E
3 furniture 3 E
4 CPUs 1 E
5 Laptops 1 E
6 Webcams 1 E
7 Hotel Furniture 3 E
8 Home Furniture 3 E
我上面有一张桌子。 ID和父删除级联相互连接。如果这个顶级类别H希望拥有以下所有内容,我会在更改列时执行操作。
CREATE OR REPLACE TRIGGER CASCADE_ABC_UPD
BEFORE UPDATE
OF ID ON MY_TABLE_NAME
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
UPDATE MY_TABLE_NAME SET act=:NEW.act WHERE PARENT=:OLD.ID;
END ;
我的第一个例子是该行的ID值' act'价值' H'没有。然后我想。父值等于其中一行' act'价值在' H'得到。
ID 1,2,3 is main category. 4,5,6,7,8 is sub category.
computer main category act='E'
computer > CPUs sub category act='E'
computer > Laptops sub category act='E'
computer > Webcams sub category act='E'
现在:我想更新该计算机主类别
更新MY_TABLE_NAME SET act =' H' WHERE ID = 1;
触发器被触发(没有错误但是没有工作)
BEGIN
UPDATE MY_TABLE_NAME SET act=:NEW.act WHERE PARENT=:OLD.ID;
END ;
之后
computer main category act='H'
computer > CPUs sub category act='E'
computer > Laptops sub category act='E'
computer > Webcams sub category act='E'
希望:
computer main category act='H'
computer > CPUs sub category act='H'
computer > Laptops sub category act='H'
computer > Webcams sub category act='H'
我已更新主要类别,子类别,但仍处于有效状态。主要类别,被动被动的子类如果你想得到所有。是否可以将其作为级联更新