SQL SERVER 级联删除

有三个表:

 

Company

Address

Contact

在Address和Contact中建立外键,外键id为company的id,

那么就不能任意删除Company。但假如在外键约束中把级联删除选上,就会连带address和contact一起删除。

  

SQL SERVER级联删除:在删除主表时,自动删除副表(外键约束)相应内容

SQL SERVER级联删除包含主键值的行的操作,该值由其它表的现有行中的外键列引用。在级联删除中,还删除其外键值引用删除的主键值的所有行。

如:

 

create database temp

go

use temp

go

 

create table UserInfo

(

UserId int identity(1,1) primary key ,

UserName varchar(20), --用户名

password varchar(20) not null --密码

)

 

create table UserDetails

(

id int identity(1,1) primary key,

name varchar(50) not null, --真实姓名

userId int,

foreign key (userId) references UserInfo(UserId) on delete cascade

)

 

insert UserInfo values ('ly','jeff')

insert UserInfo values('wzq','wzqwzq')

insert UserInfo values('lg','lglg')

 

insert UserDetails values('李四',1)

insert UserDetails values('王五',2)

insert UserDetails values('刘六',3)

 

此时:Delete From UserInfo Where UserId = 1 就可删除UserInfo表和UserDetails表的UserId=1 的内容

 

insert UserInfo values ('ly','jeff')

insert UserInfo values('wzq','wzqwzq')

insert UserInfo values('lg','lglg')

 

insert UserDetails values('李四',1)

insert UserDetails values('王五',2)

insert UserDetails values('刘六',3)

 

此时:Delete From UserInfo Where UserId = 1 就可删除UserInfo表和UserDetails表的UserId=1 的内容。

posted @   小丸  阅读(7029)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示