首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用唯一键约束更新列?

问如何使用唯一键约束更新列?
EN

Stack Overflow用户
提问于 2013-10-25 18:52:51
回答 1查看 6.4K关注 0票数 4

我使用带有唯一键约束的列(theId)中的重复项将几行插入到表中。为此,我将IDENTITY_INSERT设置为on。

我尝试了同样的技术来更新,因为我需要更改那些dupe值,但是它不起作用:

代码语言:javascript
复制
SET IDENTITY_INSERT mytable OFF
update mytable set
theId = 5
WHERE mytableId in (40, 41)
SET IDENTITY_INSERT mytable ON

错误:违反唯一键约束'XI_mytale_mytableId_othercolumn_U‘。无法在对象'dbo.mytable‘中插入重复键。

有什么想法可以通过更新来完成吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-25 19:05:13

我认为您混淆了一个Identity列,在该列中,您在设置SET IDENTITY_INSERT mytable之后设法手动添加值;在该列上定义了一个具有唯一约束的列。具有唯一约束的列将永远不允许您添加重复值。

如果您确实希望能够在具有唯一约束的列中添加重复的值,则可以简单地删除唯一约束,因为当您没有唯一的值时,为什么要有唯一的约束。

您可以使用以下语句来显示唯一约束,

代码语言:javascript
复制
ALTER TABLE TableName
DROP CONSTRAINT uc_ConstraintName
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19597421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档