请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请问老师,为什么城市表中的省份ID没有使用外键约束?

请问老师,为什么城市表中的省份ID没有使用外键约束?

正在回答

2回答

设计数据库都不使用外键约束,编写代码来控制逻辑一致性。因为使用外键容易产生外键闭环,一个数据库里面上百张表,大闭环套小闭环,哪个数据表的记录都不能删改了。所以就不使用外键。

1 回复 有任何疑惑可以回复我~
  • 提问者 winfred_wu #1
    非常感谢老师的解惑!
    回复 有任何疑惑可以回复我~ 2019-07-08 16:37:02
提问者 winfred_wu 2019-07-11 16:27:34

老师,您好!

问题1:在非新零售业务是否解决了闭环问题,就可以使用外键约束,还是都不推荐使用?

问题2:在使用ORM是操作数据库,外键约束有助于编码,我们应该如何权衡外键约束的使用?

1 回复 有任何疑惑可以回复我~
  • 在实际开发中绝大多数项目组都明确不使用外键约束,即便你现在能控制的很好不出现闭环结构,但是随着数据表增多,以及人员之间的更替,很容易出现闭环结构,所以还是放弃使用外键吧。
    在ORM映射中不需要外键也能定义一对一和一对多的关系,建立引用关系就好了。
    回复 有任何疑惑可以回复我~ 2019-07-11 16:33:28
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信