gpt4 book ai didi

mysql - 复合主键与 sql 工作台中的自动增量主键

转载 作者:行者123 更新时间:2023-12-04 15:00:47 27 4
gpt4 key购买 nike

我需要有接待经验的人的建议。
我的数据库中有一个关联实体,如下所示:

Table2-> CustomerID, ServiceID, DateSub
由于同一客户(使用 PK,例如 1111)可以多次要求相同的服务(使用 PK,例如 3) 但绝不会在同一日期 ,表2的复合PK不能只是(CustomerID, ServiceID)。
现在我有两个选择:
1- 还有 “DateSub”将是主键 ,所以表 2 的 PK 将是 (CustomerID, ServiceID, DateSub)
2- 创建一个 具体PK 对于关联实体(例如 Table2ID,因此 CustomerID 和 Service ID 将为 FK)
您会遵循这两种方法中的哪一种,为什么?谢谢

最佳答案

首先您需要确定是否需要组合CustomerID , ServiceID amd DateI列是唯一的吗?如果是这样,那么你应该选择第一个选项。
否则我会选择第二个选项。
如果 DateI 是日期数据类型,则第一个选项将无法为客户两次插入相同的服务。如果是日期时间,那么它是可行的。
如果您想在任何其他表中使用此主键(复合主键)作为外键,那么您也需要使用所有三列。

关于mysql - 复合主键与 sql 工作台中的自动增量主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67001007/

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