mysql数据库级联删除_怎样对数据库进行级联删除?

众所周知,数据库软件有级联删除和更新的功能。所谓级联删除和更新是说,如果两个表之间使用了主键与外键的关系约束,当对主键表的记录进行更新或者删除操作时,如果是更新,则自动将外键表的记录自动更新,如果是删除,则自动将外键表的记录完全删除。那么下面大家就跟着小编来看看SQL级联操作的内容吧!

ce66bdb61c53a79850a41c7642dcd21e.png

SQL级联操作设置

对SQL数据库的表,进行级联操作(如级联更新及删除),首先需要设置表的主外键关系,有两种方法:

第一种:

1.选择你要进行操作的数据库

2.为你要创建关系的两个表设置主键

3.在此数据库的数据库关系图一栏处=>单击右键=>创建新的关系图=>选择要添加关系的表,单击添加

4.完成后会在关系图的窗口上生成两个表,在表的某列按钮上长按鼠标左键,并拖到另一张表上

5.在新弹出的"表和列"的窗口中,设置两个表对应的主外键字段,确定

6.在外键关系窗口中,INSERT和UPDATE规范一栏处,将更新规则和删除规则设置为层叠,点击确定

完成,即可实现级联更新

第二种:

1.选择你要进行操作的数据库

2.为你要创建关系的两个表设置主键

3.单击你设置外键表的树型节点=>在键一栏处单击右键=>新建外键

4.在外键关系窗口中,单击表和列规范一栏右边的按钮

5.在新弹出的"表和列"的窗口中,设置两个表对应的主外键字段,确定

6.返回外键关系窗口,在INSERT和UPDATE规范一栏处,将更新规则和删除规则设置为层叠,点击确

定完成,即可实现级联更新。

级联删除的方式:

方式1:数据库设定级联

常规MSSQL、MySQL、Oracle都对设定了主外键关系的表提供级联删除。

7e38957146afd44b566c15b66d49f296.png

优点:数据准确、使用方便,数据库设计之初就设定好。

缺点:

1:增加对增删改时外键检测的额外开销。

2:潜在危险系素大(如:删除部门或角色,发现一级联递归,整个系统的数据没了)。

3:不方便触发其它事件。

4:开发人员可能被屏蔽细节。

总体描述:适合小系统、小局部、无缓存状态的情况使用。

总体总结:很少使用。

方式2:触发器处理

优点:DBA喜欢。

缺点:程序员不喜欢,很容易蒙B。

总体描述:适合系统负责人偏DBA爱好的场景,及业务无缓存场景。

总体总结:内部业务系统使用多、外部系统使用少。

方式3:业务代码控制

优点:程序员喜欢,自由控制度大。

缺点:程序员喜欢,自由控制度大(随着业务扩展,需要到处补代码)。

总体描述:爱自由,爱生活,爱写代码。

总体总结:常规方式,在所有系统使用都很广泛。

小编结语:

看完本文后,大家可以跟小编分享你们的收获哟!同时,课课家教育欢迎您的咨询!

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值