文档解释
ORA-02275: such a referential constraint already exists in the table
Cause: Self-evident.
Action: Remove the extra constraint.
ORA-02275 错误显示在您尝试为现有表定义另一个具有同样名称的外部键约束时。
Oracle官方解释
ORA-02275: 表中已存在此参照约束
Cause: 尝试在表中创建一个已存在的参照约束
Action: 删除已存在的约束或指定另一个名称,以保存另一个约束。
常见案例
假设两个表,EMPLOYEE和DEPARTMENT,在DEPARTMENT中有列DEPTNO,在EMPLOYEE表中有列DEPTO要参照DEPARTMENT表中的DEPTNO:
正常步骤
1.如果没有定义外键,可以使用以下命令:
ALTER TABLE EMPLOYEE
ADD CONSTRAINT FK_DEPTNO
FOREIGN KEY(DEPTNO)
REFERENCES DEPARTMENT(DEPTNO)
2. 如果约束已存在,则可以使用以下语句更改它:
ALTER TABLE EMPLOYEE
MODIFY CONSTRAINT FK_DEPTNO
FOREIGN KEY(DEPTNO)
REFERENCES DEPARTMENT(DEPTNO)