为了账号安全,请及时绑定邮箱和手机立即绑定

插入多个表,若这些表之间有了外键关系,就不能用事务了吗?

插入多个表,若这些表之间有了外键关系,就不能用事务了吗?

慕斯王 2018-12-03 09:17:38
<P>如题,一次性插入多个表,如果我同时还使用事务,经常出现死锁。</P> <P>我想征求一下有经验前辈的意思,是不是不推荐在插入【多个有外键关系的表】时,不能使用事务?</P>
查看完整描述

2 回答

?
慕沐林林

TA贡献2016条经验 获得超9个赞

如果多表操作出现死锁,那么应该是业务逻辑需要调整,或者程序逻辑不正确 使用事务时出现死锁,那么除去事务时,死锁一样会发生,而且没有了事务只会让系统变得更糟,因为不但会出现死锁,还会无法保证数据完整性,出错后的恢复工作将变得异常艰难,甚至根本无法完成 所以,现在主要的任务是找到业务逻辑不合理的地方,或者重新设计部分程序逻辑以避免死锁的发生,而不是取消事务 顺便说下,越是操作多个有外键联系的表,越是应该有事务,不然会很惨

查看完整回答
反对 回复 2018-12-07
?
jeck猫

TA贡献1909条经验 获得超7个赞

事务、多外键关系没有什么必然关系,不存在推荐不推荐的问题。 建议你理清自己的业务流程,来查找死锁的原因,跟用不用事务没有必然关系。

查看完整回答
反对 回复 2018-12-07
  • 2 回答
  • 0 关注
  • 945 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信