gpt4 book ai didi

php - 我应该在所有相关表中包含自动增量 ID 吗?

转载 作者:行者123 更新时间:2023-11-29 01:34:40 24 4
gpt4 key购买 nike

我在 Laravel 应用程序中有多个表,它们具有一对一的关系,例如 usersusers_settingsuser_financial

还有一些一对多的关系比如users_histories

我的问题是:

1。我应该始终在第一个位置包含增量 id 吗?

例如,下面表 #2 中的 id 是否必需?

表 1:

id (primary,increments) , name, email, password

表 2:

id (primary,increments), user_id, something_extra
^ why does every guide include this? // e.g. https://appdividend.com/2017/10/12/laravel-one-to-one-eloquent-relationships/

我不能只使用 user_id 作为主键并跳过增量键吗?因为我想在表 1 中插入数据后立即将其自动插入到表 2 中。

2。我应该如何在 Laravel 中命名 1 对 1 和 1 对多 tables? `

我搜索了但没有找到任何不同类型关系的命名约定...

目前我这样做:

具有主键 id

users 表是基础。

1 对 1:users_settings 与外键 user_id

一对多: users_histories foreign_key user_id

多对多: users_groups foreign_key user_id

前两个表应该命名为 settings/settinghistories/history 吗?抱歉,我在这里有点困惑。

最佳答案

大约 2 天前我实际上问过类似的问题。这取决于你,但我会说是的。在我的例子中,如果我不自动递增相关表中的所有 ID,数据将不会与正确的用户相关联。然而,有一种说法认为在这种情况下不应使用 auto_increment 列,但它们对其他事情很有用。根据一些人的说法,这些关系可能没有那么有意义,所以这取决于你,并取决于你的数据表的具体情况,以了解这种关系的意义。无论如何,在决定要做什么之前,您应该更多地研究 auto_incrementing 相关表中所有 id 的优点以及可能的缺点。两种方式都可以,但它们各有优缺点——您需要比较这些优缺点,以及哪种方法最适合您的具体情况。

关于php - 我应该在所有相关表中包含自动增量 ID 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57618474/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com