获取表结构和字段描述的视图

本文介绍了一种通过创建SQL视图来集中管理和展示数据库中特定表结构及注释的方法。该视图允许用户一次性查看指定用户下所有表的详细信息,包括表名、字段名及其数据类型等。此外,还提供了针对具体表结构查询的SQL语句示例,并展示了db2环境下类似操作的实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CREATE OR REPLACE VIEW VW_ALL_TAB_COLS ASSELECT T1.OWNER,T1.TABLE_NAME,T1.COMMENTS,T1.COLUMN_NAME,(CASE WHEN DATA_TYPE='NUMBER' THEN (CASE WHEN DATA_SCALE=0 THEN DATA_TYPE||'('||T2.DATA_LENGTH||')' ELSE DATA_TYPE||'('||DATA_PRECISION||','||DATA_SCALE||')' END) ELSE DATA_TYPE||'('||DATA_LENGTH||')' END ) AS DATA_TYPEFROM ALL_COL_COMMENTS T1,ALL_TAB_COLS T2WHERE T1.OWNER=T2.OWNERAND T1.TABLE_NAME=T2.TABLE_NAMEAND T1.COLUMN_NAME=T2.COLUMN_NAMEAND TRIM(T1.OWNER) IN ('username')ORDER BY T2.TABLE_NAME,T2.COLUMN_ID;

  desc 只可以获取到单个表的结构和描述信息,上面一个视图实现了用户下所有表的结构和comment

SELECT T1.OWNER,T1.TABLE_NAME,T1.COMMENTS,T1.COLUMN_NAME,(CASE WHEN DATA_TYPE='NUMBER' THEN (CASE WHEN DATA_SCALE=0 THEN DATA_TYPE||'('||T2.DATA_LENGTH||')' ELSE DATA_TYPE||'('||DATA_PRECISION||','||DATA_SCALE||')' END) ELSE DATA_TYPE||'('||DATA_LENGTH||')' END ) AS DATA_TYPE FROM ALL_COL_COMMENTS T1,ALL_TAB_COLS T2 WHERE T1.OWNER=T2.OWNER AND T1.TABLE_NAME=T2.TABLE_NAME AND T1.COLUMN_NAME=T2.COLUMN_NAME  and t1.table_name='***'  ORDER BY T2.TABLE_NAME,T2.COLUMN_ID,t2.owner;

 

db2 的如下:

select column_name, type_name, remarks   from "SYSIBM"."SQLCOLUMNS" where table_name=?  order by table_name;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

beyondsanli

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值