1. 程式人生 > >查詢主表的主鍵被其他表作為外來鍵參照的SQL

查詢主表的主鍵被其他表作為外來鍵參照的SQL

1,查詢主表的主鍵被其他表作為外來鍵參照的SQL

select child_cons.constraint_name,

child_cons.table_name child_table_name,

parent_cons.table_name parent_table,

child_cons.status

from (select *

from all_constraints

where owner = SYS_CONTEXT(‘USERENV’, ‘CURRENT_SCHEMA’)

and table_name = ‘&parent_tab’) parent_cons,

(select *

from all_constraints

where owner = SYS_CONTEXT(‘USERENV’, ‘CURRENT_SCHEMA’)

and constraint_type = ‘R’) child_cons

where parent_cons.constraint_name = child_cons.r_constraint_name;

2,Disable 其他表的外來鍵約束

select 'alter table ’ || child_cons.table_name || ’ disable constraint ’ ||

child_cons.constraint_name || ‘;’

from (select *

from all_constraints

where owner = SYS_CONTEXT(‘USERENV’, ‘CURRENT_SCHEMA’)

and table_name = ‘&parent_tab’) parent_cons,

(select *

from all_constraints

where owner = SYS_CONTEXT(‘USERENV’, ‘CURRENT_SCHEMA’)

and constraint_type = ‘R’) child_cons

where parent_cons.constraint_name = child_cons.r_constraint_name;