ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

sql里将所有表结构生成数据字典的sql脚本

2022-08-27 15:05:07  阅读:202  来源: 互联网

标签:脚本 CASE END name WHEN ELSE sql id 字典


SELECT
表名=CASE WHEN a.colorder=1 THEN d.name ELSE '' END,
表说明=CASE WHEN a.colorder=1 THEN isnull(f.value,'') ELSE '' END,
--字段序号=a.colorder,
字段名=a.name,
字段说明=isnull(g.[value],''),
标识=CASE WHEN COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 THEN '√'ELSE '' END,
主键=CASE
WHEN EXISTS(SELECT 1 FROM sysobjects WHERE xtype='PK' AND name IN (
SELECT name FROM sysindexes WHERE indid IN(
SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid
)))
THEN '√' ELSE '' END,
类型=b.name,
占用字节数=a.length,
长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允许空=CASE WHEN a.isnullable=1 THEN '√'ELSE '' END,
默认值=isnull(e.text,'')
FROM syscolumns a
left join systypes b ON a.xusertype=b.xusertype
inner join sysobjects d ON a.id=d.id AND d.xtype='U' AND d.name<>'dtproperties'
left join syscomments e ON a.cdefault=e.id
left join sys.extENDed_properties g ON a.id=g.major_id AND a.colid=g.minor_id
left join sys.extENDed_properties f ON d.id=f.major_id AND f.minor_id=0
--where d.name='orders' --如果只查询指定表,加上此条件
WHERE 1=1
--AND d.name = 'om_sa'
--AND CAST(f.value AS VARCHAR(1000)) LIKE '%账期%'
ORDER BY a.id,a.colorder

标签:脚本,CASE,END,name,WHEN,ELSE,sql,id,字典
来源: https://www.cnblogs.com/WinterSweetFirst/p/16630532.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有