2 回答
TA贡献1796条经验 获得超4个赞
我实际上在两天前问了一个类似的问题。这取决于你,但我会说是的。在我的情况下,如果我不自动增加相关表中的所有 ID,数据将不会与正确的用户相关联。然而,有一种说法认为在这种情况下不应使用 auto_increment 列,但它们对其他事情很有用。根据某些人的说法,这些关系可能没有那么有意义,因此关系的意义取决于您和数据表的具体情况。无论如何,在决定要做什么之前,您应该更多地研究 auto_incrementing 相关表中所有 ids 的优点,以及可能的缺点。无论哪种方式都很好,但它们提供了不同的优点和缺点-您
TA贡献1788条经验 获得超4个赞
这是一个关于主键的争论不休的话题。恕我直言,不,你不应该。数据库中的每一列都应该有一个用途。在此之后,对于您的示例,我同意 auto_increment id 是多余的,这仅仅是因为它没有目的。第二个表仍然唯一地描述用户,因此主键应该是 user_id。
除了上述之外,还有一个原则让我决定是否需要auto_increment id:是否可以将表视为实体。例如,用户显然是一个实体,但关系不是(在大多数情况下),即组合键可以达到目的。但是,当关系表扩展为具有更多属性并且它具有 auto_increment id 开始变得有意义时。
我对 Laravel 没有太多经验,但数据库表的命名不应该由框架决定。比较 history 和 user_history,新 DBA 或开发人员在不查看其数据的情况下对这两个名称有何期望?user_history 更准确地描述了该表
- 2 回答
- 0 关注
- 170 浏览
添加回答
举报