oracle获取当前用户表、字段等详细信息SQL

做个笔记,仅供参考

select 
d.table_name tbname,//表名
coalesce(t.comments, ' ') tbdesc, //表注释
a.column_name columnname, //字段名
a.data_type columntype, //字段类型
a.data_length width, //字段长度
a.data_scale precision,//字段小数位

decode(a.nullable,'y','0','1') notnull,//是否允许空
coalesce(m.comments, ' ') comments, //字段备注
decode(k.uniqueness,'unique','1','0') uniques, //是否唯一
coalesce(k.index_name, ' ') indexname,//如果是索引,索引名
decode(k.key,'y','1','0') masterkey//是否主键
from
user_tab_columns a
inner join user_tables d on a.table_name=d.table_name
left join user_tab_comments t on t.table_name=d.table_name
left join user_col_comments m on m.column_name=a.column_name and m.table_name=d.table_name
left join
(
select e.index_name,u.table_name,u.column_name,e.uniqueness,decode(p.constraint_name,null,'n','y') key
from user_indexes e inner join user_ind_columns u on e.index_name=u.index_name
left join ( select constraint_name from user_constraints where constraint_type='p' ) p on e.index_name=p.constraint_name
) k on k.table_name=a.table_name and k.column_name=a.column_name
order by tbname

备注:user_开头是当前用户,all_开头所有用户,dba_开头包括系统表

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐