欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle 获取表的包含约束的结构信息

程序员文章站 2022-05-19 23:50:06
...

环境 Oracle 9 Release 2用户sys测试表名ATTRIBUTE_TRANSFORMATIONS$使用到的数据字典中的表和视图

环境 Oracle 9 Release 2

用户sys

测试表名ATTRIBUTE_TRANSFORMATIONS$

使用到的数据字典中的表和视图

USER_TAB_COLUMNS:用户表基本机构信息

user_constraints:用户约束基本信息

user_cons_columns:用户约束与字段对应信息

select a.column_name,a.data_type,a.data_length,b.constraint_type,b.r_table_name,b.r_column_name
from
(select column_name,Data_type,data_length from USER_TAB_COLUMNS WHERE USER_TAB_COLUMNS.TABLE_NAME='ATTRIBUTE_TRANSFORMATIONS$') a,
( select a.column_name,a.constraint_type ,b.table_name r_table_name ,b.column_name r_column_name
from
( select a.constraint_name,a.constraint_type,a.r_constraint_name,b.table_name,b.column_name
from user_constraints a, user_cons_columns b
WHERE a.constraint_name=b.constraint_name and a.table_name='ATTRIBUTE_TRANSFORMATIONS$') a
left join user_cons_columns b on a.r_constraint_name=b.constraint_name
) b
where a.column_name=b.column_name(+)

运行结果

Oracle 获取表的包含约束的结构信息