删除一个表时,提示有外键约束,ORA-02292: 违反完整约束条件 () - 已找到子记录
先查出对应的外键属于哪个表
select * from user_constraints uc where uc.constraint_name='';
找到后禁用
alter table 表名 disable constraint 约束名;
或者在plsql中
[img]http://dl2.iteye.com/upload/attachment/0098/2567/235ceaff-9fc1-31fa-95e5-53340dfe835a.png[/img]
之后就可以直接删除
其中有两个延迟记录一下:
·DEFERRABLE INITIALLY IMMEDIATE:创建可延迟的约束,初始状态是在语句级检查。INITIALLY IMMEDIATE也可以不写。
·DEFERRABLE INITIALLY DEFERRED: 创建可延迟的约束,初始状态是在延迟检查。
commit时才检查
可以通过级联的删除
alter table xxx add constraint 约束名 foreign key (外键字段名)
references yyy (ID) on delete cascade
这样可以通过删除yyy直接删除对应xxx的数据
先查出对应的外键属于哪个表
select * from user_constraints uc where uc.constraint_name='';
找到后禁用
alter table 表名 disable constraint 约束名;
或者在plsql中
[img]http://dl2.iteye.com/upload/attachment/0098/2567/235ceaff-9fc1-31fa-95e5-53340dfe835a.png[/img]
之后就可以直接删除
其中有两个延迟记录一下:
·DEFERRABLE INITIALLY IMMEDIATE:创建可延迟的约束,初始状态是在语句级检查。INITIALLY IMMEDIATE也可以不写。
·DEFERRABLE INITIALLY DEFERRED: 创建可延迟的约束,初始状态是在延迟检查。
commit时才检查
可以通过级联的删除
alter table xxx add constraint 约束名 foreign key (外键字段名)
references yyy (ID) on delete cascade
这样可以通过删除yyy直接删除对应xxx的数据