GoForum › 🌐 V2EX
你们现在设计系统数据库的时候还在数据库层面搞外键约束吗?
libasten ·
2026-03-23 13:34 ·
0 次点赞 · 7 条回复
手里一个项目升级,数据库稍有变动,ai 帮忙的,给加了外键,然后它自己老是迁移升级过不去,外键校验卡住了。 然后我就问了下其他 ai 。 回答有点意思。
豆包
可能是互联网短平快开发的代表?主要意见是不要数据库层面搞外键,会给数据库维护带来麻烦,比如之前遇到的外键校验之类的,强烈建议我在业务逻辑中做校验限制啥的。
qwen
他家是不是金融类工业类的用语料多?和豆包不一样,强烈建议我在数据库层面就加上外键,除非是经常发生上亿级别的数据库变动啥的,会影响效率,否则都建议做外键。
7 条回复
添加回复
你还需要 登录
后发表回复
要么开始就加,要么一直就不加。
从头搞项目的话,看数据类型。数据量预期不会特别大,而且对数据完整性要求比较高的,肯定还是加。其他数据量比较大的东西,比如 xx 记录这种,就尽量搞一张扁平大表,方便后续拆出去,上队列或者缓存,或者 OLAP 等其他的服务。