在执行数据库删除操作时,外键关联是令我们最烦的一个东西,有了外键关联,就不允许随意删除数据,那么怎知道这个外键关联度的外键属于那个表?
select * from user_cons_columns cl where cl.constraint_name = '外键名'
这样,我们就可以看到这个外键所关联的表了
还有一种情况是我不知道有哪几个表关联了我的表中的字段,我想全部找出来怎么办?
SELECT a.owner, A.TABLE_NAME primary_table_name, A.CONSTRAINT_NAME primary_table_key_name, b.owner, B.TABLE_NAME foreign_table, B.CONSTRAINT_NAME foreign_table_foreign_key_name, B.STATUS foreign_table_foreign_key_stat FROM DBA_CONSTRAINTS A, DBA_CONSTRAINTS B WHERE A.CONSTRAINT_NAME = B.R_CONSTRAINT_NAME and B.CONSTRAINT_TYPE = 'R' AND a.TABLE_NAME = 'tablename' and a.owner='database' and b.owner='database'
这样就可以查到这张表所有的外键关联表了