gpt4 book ai didi

sql-server - 标识列是否包含重复值?

转载 作者:行者123 更新时间:2023-12-01 06:18:11 26 4
gpt4 key购买 nike

我有带有标识列的表。这看起来像身份列是重复的。该列包含重复值的所有可能性是什么。

表结构如下所示,

  create table Table1(ID INT identity, value varchar(10)) 

最佳答案

如果该列没有唯一约束,则有可能在其中获取重复值。
一种方法是这样的

SET IDENTITY_INSERT Table1 ON

INSERT INTO Table1 (ID, value)
VALUES (1, 'hello')

SET IDENTITY_INSERT Table1 OFF

另一种方法是重新为表格播种,查看 Satheesh 的回答以了解如何做到这一点。

如果您不希望这样,请将此列设置为主键 或在该列上创建一个唯一约束

如何制作唯一索引:

CREATE UNIQUE NONCLUSTERED INDEX idx_Table1_ID
ON dbo.Table1(ID)
WHERE ID IS NOT NULL;

WHERE ID IS NOT NULL; 在您的示例中是必需的,因为您允许在 ID 列中使用空值,我不建议这样做

我有理由相信您的表格应该是这样的

Create table Table1 (
ID int identity not null,
Value varchar(10),
constraint PK_Table1_ID primary key (ID)
)

关于sql-server - 标识列是否包含重复值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54590247/

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