ORA-02292违反完整约束和ORA-02297无法禁用约束条件 cascade禁用主键
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29863023/viewspace-1352988/
ORACLE 中delete时出现ORA-02292:违反完整约束条件 错误
该表中存在主键或外键,可以先禁用。
于是用: alter table hx_tb.tabs modify constraint FK_fk1 disable;
alter table hx_ta.tabs modify constraint PK_pk1 disable;
我用的是:
ALTER TABLE ES_SYSTEM.FUNC_DEF DISABLE CONSTRAINT PK_FUNC_DEF CASCADE;
发现禁用主键 PK_pk1 时 提示ORA-02297:无法禁用约束条件 -存在相关性
说明该表的主键被其他表作为了外键,置约束无效得加上cascade;
cascade:
级联删除,比如你删除某个表的时候后面加这个关键字
会在删除这个表的同时删除和该表有关系的其他对象
于是可以 alter table hx_ta.tabs modify constraint PK_pk1 disable cascade; 可成功禁用!
执行完delete 操作后,执行:
alter table hx_tb.tabs modify constraint FK_fk1 enable;
alter table hx_ta.tabs modify constraint PK_pk1 enable;
我用的是:
ALTER TABLE ES_SYSTEM.FUNC_DEF MODIFY CONSTRAINT PK_FUNC_DEF ENABLE;