找回密码
 立即注册
首页 业界区 业界 老马失前蹄,竟然在数据库外键上翻车了,重温外键级联 ...

老马失前蹄,竟然在数据库外键上翻车了,重温外键级联

寇油 12 小时前
祸起 dev environment

某天晚上,群里突然有人@我,说开发环境出现报错,一查发现是我负责的接口出了问题,瞬间虎躯一震,赶紧定位问题。

谜底就在谜面上:主表数据被删除,但子表仍保留外键约束,导致删除操作直接失败
三分钟解决问题,行云流水,毫不拖泥带水。
反思与复盘

但这件事引发了我的反思:这种错误太低级了,低级到刚毕业的我都不可能犯,但工作多年后的我反而踩坑了。
复盘原因,主要有三点:

  • 对外键本质理解不够深入
    人云亦云、浅尝辄止,没有真正吃透原理。
    温故而知新,希望未来不再被同样的问题“回旋镖”命中。
  • 过度依赖 DBA 兜底,思考偷懒
    经验主义害人,任何技术点都不能“不带脑子”。
  • 对业务上游逻辑不够熟悉
    不知道上游业务会执行删除操作。
    后续需要加强业务文档沉淀、多总结、多梳理。
外键 Foreign Key 解析

什么是外键?

数据库外键,是一个熟悉又陌生的词。

  • 熟悉:大学就学过,工作天天提
  • 陌生:商业项目里几乎从不真正启用
<blockquote>
至于为什么不建外键?别问,问就是互联网公司传统!
当然,主要是没权限。
那为什么现在又开始建了?
一代版本一代神,换工作了
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册