oracle 查詢主表的主鍵被其他表作爲外鍵參照的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;

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章