因为现在做维护,在需要重新导入某表时,发现该表有外键约束,此时该表是不能删除的,此时你需要暂时删除外键,然后重导数据后在手动创建外键约束。
查询某表外键的语句如下:
select c1.table_name as org_table_name, c1.constraint_name as org_constraint_name, c1.constraint_type as org_constriant_type, n1.column_name as org_colun_name, c2.table_name as ref_table_name, c2.constraint_type as ref_constraint_type, c2.constraint_name as ref_constraint_name, n2.column_name as ref_column_name from dba_constraints c1, dba_constraints c2, dba_cons_columns n1, dba_cons_columns n2 where c1.owner = 'TABLE_OWER' and c1.table_name = 'TABLE_NAME' and n1.constraint_name = c1.constraint_name and n1.owner = c1.owner and c2.constraint_type = 'R' and c2.r_constraint_name = c1.constraint_name and n2.owner = c2.owner and n2.constraint_name = c2.constraint_name;
找到指定的表,删除外键即可。
Java小强
未曾清贫难成人,不经打击老天真。
自古英雄出炼狱,从来富贵入凡尘。
发表评论: