首页 > 数据库技术 > 详细

数据库几张表有主外键关系怎么删除

时间:2015-12-20 22:08:38      阅读:836      评论:0      收藏:0      [点我收藏+]

1. trigger ,数据库触发器操作。在数据库完成,
先删子表后删主表,连接数据库次数太多,性能估计不太好。

 

2. 级联删除

在创建表时定义,如下所示的b表:

create table a
(
id  varchar(20) primary key,
password varchar(20) not null
)

create table b
(
id int identity(1,1)  primary key,
name varchar(50) not null,
userId varchar(20),
foreign key (userId) references a(id) on delete cascade
)
表B创建了外码userId 对应A的主码ID,声明了级联删除
测试数据:
insert a values (11,aaa)
insert a values(23,aaa)
insert b values(da,11)
insert b values(das,11)
insert b values(ww,23)
删除A表内id为‘11’的数据,发现B表内userId 为“11”也被数据库自动删除了,这就是级联删除
delete a where id=11

 

数据库几张表有主外键关系怎么删除

原文:http://www.cnblogs.com/shanheshui/p/5061717.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!