Joy*_*979 18 sql database primary-key sql-server-2008
我正在尝试将主键添加到现有表名中新添加的列Product_Details.
新列说:Product_Detail_ID(int和not null)
我正在尝试添加主键Product_Detail_ID(请注意:没有为此表分配其他主键或外键)
我正在尝试此查询,但收到错误.
ALTER TABLE Product_Details
ADD CONSTRAINT pk_Product_Detils_Product_Detail_ID PRIMARY KEY(Product_Detail_ID)
GO
Run Code Online (Sandbox Code Playgroud)
错误:
该
CREATE UNIQUE INDEX声明终止,因为重复的键被发现的对象名'dbo.Product\_Details'和索引名'pk\_Product\_Detils'.重复键值为(0).
我在这里错过了什么吗?我正在使用SQL Server 2008 R2.我将不胜感激任何帮助.
Ric*_*iwi 32
如果希望SQL Server自动为新列提供值,请将其设置为标识.
ALTER TABLE Product_Details DROP COLUMN Product_Detail_ID
GO
ALTER TABLE Product_Details ADD Product_Detail_ID int identity(1,1) not null
GO
ALTER TABLE Product_Details
add CONSTRAINT pk_Product_Detils_Product_Detail_ID primary key(Product_Detail_ID)
GO
Run Code Online (Sandbox Code Playgroud)
在mysql中,我能够通过以下查询实现
ALTER TABLE table_name ADD new_column int NOT NULL AUTO_INCREMENT primary key