比如我现在有三个表A(aa,cc)B(bb,aa)C(cc,bb,aa)
我设置的B表里的aa是A表的外键,C表的aa也是A表的外键,同时C表的bb是B表的外键
就这样关联起来,但是我删除A表主键的时候,B表里对应的可以删除,跟B表中被删除的bb对应的表C中的内容也被删除,但是与A表中被删除的aa对应的表C的内容却删除不了,请高手指点?现在是这样的关系,B删则C删,但是A删B不一定删,C也不一定删
我设置的B表里的aa是A表的外键,C表的aa也是A表的外键,同时C表的bb是B表的外键
就这样关联起来,但是我删除A表主键的时候,B表里对应的可以删除,跟B表中被删除的bb对应的表C中的内容也被删除,但是与A表中被删除的aa对应的表C的内容却删除不了,请高手指点?现在是这样的关系,B删则C删,但是A删B不一定删,C也不一定删
级联更新你要写一个trigger
SQL> Create TABLE NEWS(
2 ID VARCHAR2(20) NOT NULL,
3 OBJID VARCHAR2(20) NOT NULL,
4 TITLE VARCHAR2(60) NOT NULL,
5 AUTHOR VARCHAR2(40),
6 FROMWhere VARCHAR2(60),
7 CONTENT CLOB,
8 ADDDATE DATE,
9 CONSTRAINT PK_NEWS PRIMARY KEY(ID),
10 CONSTRAINT FK_NEWS FOREIGN KEY(OBJID)
11 REFERENCES NEWOBJ(ID)
12 ON Delete CASCADE);表已创建。SQL> Insert INTO NEWS(ID,OBJID,TITLE)VALUES('10','10','BUY THE COMPUTER');已创建 1 行。SQL> Insert INTO NEWS(ID,OBJID,TITLE)VALUES('20','10','I LOVE YOU');已创建 1 行。SQL> Select COUNT(*) FROM NEWOBJ; COUNT(*)
----------
2SQL> Select COUNT(*) FROM NEWS; COUNT(*)
----------
2SQL> Delete FROM NEWOBJ Where ID='10';已删除 1 行。SQL> Select COUNT(*) FROM NEWOBJ; COUNT(*)
----------
1SQL> Select COUNT(*) FROM NEWS; COUNT(*)
----------
0