Oracle查询表的外键
  • 2023-12-23 12:13:10
  • 5071 热度
  • 0 评论

因为现在做维护,在需要重新导入某表时,发现该表有外键约束,此时该表是不能删除的,此时你需要暂时删除外键,然后重导数据后在手动创建外键约束。

查询某表外键的语句如下:

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;

找到指定的表,删除外键即可。



alay

Flame

Hello world!

0 评论
留下评论