功能:在删除主表时,自动删除副表(外键约束)相应内容
删除包含主键值的行的操作,该值由其它表的现有行中的外键列引用。在级联删除中,还删除其外键值引用删除的主键值的所有行。
如:
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)
sqlserver 支持级联更新和删除
oracle 只支持级联删除
alter table 表名
add constraint 外键名
foreign key(字段名) references 主表名(字段名)
on delete cascade
语法:
Foreign Key
(column[,...n])
references referenced_table_name[(ref_column[,...n])]
[on delete cascade]
[on update cascade]
注释:
column:列名
referenced_table_name:外键参考的主键表名称
ref_name:外键要参考的表的主键列
on delete:删除级联
on update:更新级联
20169212 2016-2017-2《网络攻防实践》第八周学习总结
20169212 2016-2017-2 《网络攻防实践》第七周学习总结
20169212 2016-2017-2 《网络攻防实践》第六周学习总结
20169212 2016-2017-2 《网络攻防实践》第五周学习总结
20169212 2016-2017-2 《网络攻防实践》第四周学习总结
20169212 2016-2017-2 《网络攻防实践》第三周学习总结
20169212 2016-2017-2 《网络攻防实践》第二周学习总结
20169212《网络攻防实践》第一周学习总结
20169212《Linux内核原理与分析》课程总结
- 最新文章
-
20169211《Linux内核原理与分析》第五周作业
20169203 2016-2017-2 《网络攻防实践》第四周学习总结
20169203 2016-2017-2 《网络攻防实践》 黑客资料总结
20169203 2016-2017-2 《网络攻防实践》第三周学习总结
20169203 2016-2017-2 《网络攻防实践》第二周学习总结
20169203《网络攻防》第一周作业
20169203《Linux内核原理与分析》课程总结
20169203《Linux内核原理及分析》第十二周作业
20169203《Linux内核原理与分析》第十一周作业
20169203 《Linux内核原理与分析》 第十周作业
- 热门文章
-
20169203 《Linux内核原理与分析》 第九周作业
20169207 缓冲区溢出实验
20169207 2016-2017-2《网络攻防实践》实验报告第二周作业
20169207 2016-2017-2 网络攻防环境的搭建与测试
20169207 2016-2017-2 《移动平台应用开发实践》第八周学习总结实验报告二
20169207 2016-2017-2 《移动平台应用开发实践》第七周学习总结
20169207 2016-2017-2 《网络攻防实践》第七周学习总结
20169207 2016-2017-2 《移动平台应用开发实践》第六周学习总结
20169207 2016-2017-2 《网络攻防实践》第六周学习总结
20169207 2016-2017-2 《网络攻防实践》 第五周学习总结