T-SQL级联删除——ON DELETE CASCADE

来源:互联网 发布:hsk网络考试 编辑:程序博客网 时间:2024/04/28 23:16

ON DELETE CASCADE

创建两张表:

create table class(Id int identity(1,1) primary key,cname nvarchar(20))GOcreate table student(Id int identity(1,1) primary key,sname nvarchar(20),cid int references class(id) on delete cascade--级联删除)GO

插入测试数据:

insert into classselect 'C1' unionselect 'C2' unionselect 'C3'insert into studentselect 'N1',1 unionselect 'N2',1 unionselect 'N3',2

删除class中的数据前:

--Class

Id          cname
----------- --------------------
1           C1
2           C2
3           C3

--Student
Id          sname                cid
----------- -------------------- -----------
1           N1                   1
2           N2                   1
3           N3                   2


删除数据:

delete from class where id = 1;

删除后:

--Class

Id          cname
----------- --------------------
2           C2
3           C3

--Student
Id          sname                cid
----------- -------------------- -----------
3           N3                   2


删除Class表中的数据时,Student表中引用对应的Class的数据也删除了。


原创粉丝点击