Oracle数据库获取表字段、注释、字段类型等

项目开发中我们经常遇到整理数据设计文档的场景,用这个脚本可以直接查询出来整理文档中我们需要的内容

with tmp as (
	select
		col.column_name,
        con.constraint_type
    from user_constraints con
    left join user_cons_columns col on con.constraint_name = col.constraint_name
    where con.table_name = ''
)
select 
	a.table_name,
    d.comments as table_comment,
    a.cloumn_name,
    b.comments as column_comment,
    case
		when a.data_type = 'VARCHAR2' then
			a.data_type || '(' a.data_length || ')'
		when a.data_type = 'NUMBER' then
			(case
				when a.data_precision is not null then
					a.data_type || '(' || a.data_precision || ',' || nvl(a.data_scale,0) || ')'
                end
			)
		else a.data_type
	end as data_type
	a.nullable,
    c.constraint_type
from 
	user_tab_columns a
	left join user_col_comments b on a.table_name = b.table_name and a.column_name = b.column_name
	left join tmp c on a.column_name = c.column_name
	left join user_tab_comments d on a.table_name = d.column_name
where 
	a.table_name = ''
order by 
	a.column_id 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值