gpt4 book ai didi

sql - 有没有可能在sql server的一张表上有两个PK?

转载 作者:行者123 更新时间:2023-12-01 15:07:42 37 4
gpt4 key购买 nike

enter image description here

我真的很惊讶这个表有两个 PK 列。

当我尝试在另一列上添加 PK 时,这两个 PK 列正常更改,只有一列更改为 PK。

下面是给它的脚本

ALTER TABLE [dbo].[ProductionPlaning] ADD  CONSTRAINT [PK_ProductionPlaning] PRIMARY KEY CLUSTERED 
(
[ProductionPlaningId] ASC,
[Date] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO

最佳答案

根据定义,主键是唯一标识数据库表中记录的一个或多个字段。因此,同一个表不能有两个单独的主键。

如果您只是希望该字段是唯一的,您只需通过向其添加唯一约束使其成为唯一字段 ALTER TABLE YourTableNAme
添加唯一(日期);

如果您希望 ProductionPlanningId 和 Date 都成为您的表的唯一标识符;你制作了一个复合主键:

ALTER table TABLE_NAME
ADD CONSTRAINT [name of your PK, e.g. PK_TableName] PRIMARY KEY CLUSTERED(column1, column2, etc.)

关于sql - 有没有可能在sql server的一张表上有两个PK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49271788/

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