可以先简单理解成:触发器
让我们举个栗子
- 在数据库建三个表:a(主表),aa,aaa
-- 表a
create table a(
id intPRIMARY KEY,
age int
)
-- 表aa,没有级联
create table aa(
id1 intPRIMARY KEY,
age1 int,
FOREIGN KEY(id1) REFERENCES a(id)
)
-- 表aaa,设置级联删除
create table aaa(
id2 intPRIMARY KEY,
age2 int,
FOREIGN KEY(id2) REFERENCES a(id) ON DELETE CASCADE
)
- 对各表插入数据
insert into a VALUES ('001','001');
insert into a VALUES ('002','002');
insert into aa VALUES ('001','0011');
insert into aaa VALUES ('002','0022');
2.1. 查看一下此时各表的数据
select id 'a表id',age from a;
select id1 'aa表id',age1 from aa;
select id2 'aaa表id',age2 from aaa;
- 对主表进行记录删除操作
delete from a where id = 1; -- 无法删除
delete from a where id = 2; -- 可删除
- 再查看一下各表
select id 'a表id',age from a; -- 少了一条记录
select id1 'aa表id',age1 from aa; -- 无变化
select id2 'aaa表id',age2 from aaa; -- 无纪录
本文地址:http://www.45fan.com/dnjc/100288.html