Oracle更新查询忽略主约束

Oracle更新查询忽略主约束,oracle,Oracle,我有一个如下表 area user ------------ area2 user1 area2 user2 area3 user1 (区域、用户)是pk 我执行如下查询 update areatable set user = 'user2' where user = 'user1' 第一行更新时引发主键约束错误,第三行未更新。如何忽略第一行错误并继续更新第三行 或 在更新该行之前,如何查找表中是否已经存在(区域、用户)组合 希望我用这个例子把问题说清楚。提前感谢您的帮助。您需要一

我有一个如下表

area   user
------------
area2  user1
area2  user2
area3  user1
(区域、用户)是pk

我执行如下查询

update areatable
set user = 'user2'
where user = 'user1'
第一行更新时引发主键约束错误,第三行未更新。如何忽略第一行错误并继续更新第三行 或 在更新该行之前,如何查找表中是否已经存在(区域、用户)组合


希望我用这个例子把问题说清楚。提前感谢您的帮助。

您需要一个不存在的
,例如

Update AreaTable
   Set User = 'user2'
 Where User = 'user1'
   And Not Exists (Select 1
                     From AreaTable CheckAreaTable
                    Where CheckAreaTable.Area = AreaTable.Area
                      And CheckAreaTable.User = 'user2')

不客气。刚刚注意到我的
'User2'
应该是
'User2'
,也就是说,显然要注意区分大小写。:)那很好。这只是我真实场景的一个例子。在我的真实场景中,user实际上是userid,一个数字数据类型