m0m*_*eni 3 sql database-design
我正在设计我的第一个关系数据库,它只有几个表,但我很好奇有关外键的规则是什么。
在这种特定情况下,我有一个评论表和一个回复该评论的表。外键应该在评论表中,指向回复id,还是外键应该在回复表中,指向评论id?
对我来说似乎没有真正的区别,但我想知道是否有一个约定来指定它应该如何完成。
简单的答案是“什么取决于什么”这个问题的答案?在您的情况下,是否需要在回复之前发表评论?有函数依赖吗?如果是,则“父”为评论表,“子”为回复表。那么你想在回复表上放置一个 FK 指向评论表。
因此,您正在强制执行回复指向的始终存在的评论。如果这符合系统的现实,那么 FK 就有意义了。