ORA-02259: duplicate UNIQUE/PRIMARY KEY specifications

文档解释

ORA-02259: duplicate UNIQUE/PRIMARY KEY specifications

Cause: Self-evident.

Action: Remove the duplicate specification.

ORA-02259: 该错误表,程序对对象定义有两个重复的UNIQUE/PRIMARY KEY 规定。

官方解释

常见案例

1.在Create Table的时候,字段ID上同时定义两个相同的约束,如:

CREATE TABLE EMP

(

EMPNO NUMBER,

ENAME VARCHAR2(100),

CONSTRAINT PK_EMP PRIMARY KEY (EMPNO),

CONSTRAINT UN_EMP UNIQUE (EMPNO)

);

2. 在向已存在表添加UNIQUE或PRIMARY KEY索引时,发现该表中已存在另一个相同的索引时就会出现ORA-02259。假如表TEST中有个字段名为ID,已有PRIMARY KEY约束,此时再增加UNIQUE索引,如:

ALTER TABLE TEST ADD CONSTRAINT TEST_UNIQUE UNIQUE (ID);

就会出现ORA-02259:duplicate UNIQUE/PRIMARY KEY specifications错误。

正常处理方法及步骤

1. 如果是Create Table时多次定义重复约束,可以直接去掉一个;

2. 如果是向已存在表添加UNIQUE或PRIMARY KEY时出现,则可以移除重复定义的索引:

ALTER TABLE TEST DROP INDEX ;

你可能感兴趣的