逻辑外键代替物理外键

在晚上看到的一网友的评论,引起我的共鸣,一直以来的想法不知如何表述、也不知对不对。于是,[ 逻辑外键代替物理外键 ]便是我想表达的意思。

(1)数据库外键:

有几个特点:1.需要维护外键;2.外键相当于代码应用层的实现转移到了数据库内部实现;3.在做一些增删更操作时,会因外键触发一些相关的检查工作,消耗资源,效率更低;4.外键可能会请求其它表加锁,而造成死锁情况。

 

(2)思考:

1. 从架构来说,加入外键,为了更好的保证数据一致性。开发中,初期可以设计良好的外键;在后期为了更高的效率+更好的可扩展性,可删去外键。

2. 数据库难以扩展,服务器较数据库扩展 成本更低。因此:可以讲事务管理从DB转移到应用层,让server承受压力会更好一些。

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 12:30
点赞 评论 收藏
分享
面向对象的火龙果很爱...:去吃一顿炸鸡就走
点赞 评论 收藏
分享
06-28 22:48
已编辑
广东金融学院 Java
小浪_Coding:学院本+这俩项目不是buff叠满了嘛
点赞 评论 收藏
分享
牛客刘北:如果暑期实习是27届的话,你要晚一年才会毕业,企业为什么会等你呢?要搞清时间逻辑呀!27届现在实习只能是在暑假实习,这是日常实习,不是暑期实习。所以多去投日常实习吧,暑期实习肯定不会要你的
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 11:21
被夸真的超级开心,好可爱的姐姐
码农索隆:老色批们不用脑补了,我把金智妮的图找来了查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务