ORA-02261: such unique or primary key already exists in the table

文档解释

ORA-02261: such unique or primary key already exists in the table

Cause: Self-evident.

Action: Remove the extra key.

ORA-02261错误表明,正在尝试使用的某个唯一或主键值,已经存在于表中。

官方解释

ORA-02261:

类型:错误

对象:

参数:

描述

在试图插入或更新唯一或主键约束字段时出现 ORA-02261

解释

ORA-02261 表示您试图插入或更新表中的唯一或主键约束字段,但是唯一或主键值已存在。

常见案例

某角色更新表中唯一或主键值时,由于存在两个相同的唯一或主键值,造成更新失败;或者向表中插入新行时,由于该行的唯一或主键值已存在,导致插入失败。

正常处理方法及步骤

步骤1:确认是否存在唯一或主键约束错误。

步骤2:如果不确定是否存在唯一或主键约束错误:

a)运行以下命令查看索引是否存在两个相同密钥:

SELECT index_name, column_name, table_name

FROM user_ind_columns

WHERE table_name = ”

GROUP BY index_name, column_name, table_name

HAVING COUNT(1) > 1

;

b)查看表中是否存在重复的行:

SELECT column_name, COUNT(1)

FROM

GROUP BY column_name

HAVING COUNT(1) > 1

;

步骤3:修改现有表行或调整索引,以确保表中不存在两个相同的唯一/主键值。

你可能感兴趣的