Sql更新:重复键错误后继续更新(transact-SQL)

时间:2015-04-22 14:36:28

标签: sql-update on-duplicate-key

我有以下脚本:

update myTable set FieldValue = 1 where FieldValue = 2

现在假设我在mytable中有10个条目,在更新第5个元素时,我得到重复键插入错误

  

无法在对象'dbo.mytable'中插入重复的键行   具有独特的索引。该   重复键值为(FieldValue)。

并且没有完成在第5次之后必须更新的元素的更新。

如果发生错误,我可以不做任何事情,并且跳过更新由于上面的错误而无法更新的元素。

如何在出现此类错误后继续更新其余元素?

1 个答案:

答案 0 :(得分:0)

使用IGNORE关键字,如下所示:

update IGNORE myTable set FieldValue = 1 where FieldValue = 2;

如果记录更新失败(例如由于唯一的密钥约束),它将被跳过而其他记录将继续。