我是靠谱客的博主 怕黑橘子,最近开发中收集的这篇文章主要介绍sql使用数据库系统函数生成数据字典,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

declare @tablename nvarchar(50)='appUser'

--表描述

--SELECT tbs.name 表名,ds.value 描述

--FROM sys.extended_properties ds

--LEFT JOIN sysobjects tbs ON ds.major_id=tbs.id

--WHERE ds.minor_id=0 and

--tbs.name=@tablename;--表名

 

--快速查看表结构

SELECT CASE WHEN col.colorder = 1 THEN obj.name

ELSE ''

END AS 表名,

col.colorder AS 序号 ,

col.name AS 列名 ,

ISNULL(ep.[value], '') AS 列说明 ,

t.name AS 数据类型 ,

col.length AS 长度 ,

ISNULL(COLUMNPROPERTY(col.id, col.name, 'Scale'), 0) AS 小数位数 ,

CASE WHEN COLUMNPROPERTY(col.id, col.name, 'IsIdentity') = 1 THEN '√'

ELSE ''

END AS 标识 ,

CASE WHEN EXISTS ( SELECT 1

FROM dbo.sysindexes si

INNER JOIN dbo.sysindexkeys sik ON si.id = sik.id

AND si.indid = sik.indid

INNER JOIN dbo.syscolumns sc ON sc.id = sik.id

AND sc.colid = sik.colid

INNER JOIN dbo.sysobjects so ON so.name = si.name

AND so.xtype = 'PK'

WHERE sc.id = col.id

AND sc.colid = col.colid ) THEN '√'

ELSE ''

END AS 主键 ,

CASE WHEN col.isnullable = 1 THEN '√'

ELSE ''

END AS 允许空 ,

ISNULL(comm.text, '') AS 默认值

FROM dbo.syscolumns col

LEFT JOIN dbo.systypes t ON col.xtype = t.xusertype

inner JOIN dbo.sysobjects obj ON col.id = obj.id

AND obj.xtype = 'U'

AND obj.status >= 0

LEFT JOIN dbo.syscomments comm ON col.cdefault = comm.id

LEFT JOIN sys.extended_properties ep ON col.id = ep.major_id

AND col.colid = ep.minor_id

AND ep.name = 'MS_Description'

LEFT JOIN sys.extended_properties epTwo ON obj.id = epTwo.major_id

AND epTwo.minor_id = 0

AND epTwo.name = 'MS_Description'

--WHERE obj.name !='sysdiagrams'--= @tablename--表名

ORDER BY obj.name,col.colorder ;

最后

以上就是怕黑橘子为你收集整理的sql使用数据库系统函数生成数据字典的全部内容,希望文章能够帮你解决sql使用数据库系统函数生成数据字典所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部