加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 使用主键在现有表中添加列

发布时间:2020-12-12 07:48:19 所属栏目:MsSql教程 来源:网络整理
导读:我试图在现有的表名称Product_Details中添加新添加的主键. 添加新列:Product_Detail_ID(int和not null) 我正在尝试向Product_Detail_ID添加主键(请注意:没有其他主键或外键分配给此表) 我正在尝试这个查询,但得到错误. ALTER TABLE Product_DetailsADD CONS
我试图在现有的表名称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

错误:

The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'dbo.Product_Details' and the index name 'pk_Product_Detils'. The duplicate key value is (0).

我在这里遗漏了什么吗?我正在使用SQL Server 2008 R2.我将不胜感激任何帮助.

解决方法

如果您希望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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读