您的位置:首页技术文章
文章详情页

使用SQL语句快速获取SQL Server数据字典

【字号: 日期:2023-11-04 19:42:51浏览:5作者:猪猪
本文主要介绍了一个获取SQL Server数据字典的经典SQL语句,大家可以根据各自的实际情况对这段语句进行相应的修改。

SELECT sysobjects.name AS [table], sysproperties.[value] AS 表说明, syscolumns.name AS field, properties.[value] AS 字段说明, systypes.name AS type, syscolumns.length, ISNULL(COLUMNPROPERTY(syscolumns.id, syscolumns.name, 'Scale'), 0) AS 小数位数, syscolumns.isnullable AS isnull, CASE WHEN syscomments.text IS NULL THEN '' ELSE syscomments.text END AS [Default], CASE WHEN COLUMNPROPERTY(syscolumns.id, syscolumns.name, 'IsIdentity') = 1 THEN '√' ELSE '' END AS 标识, CASE WHEN EXISTS(SELECT 1FROM sysobjectsWHERE xtype = 'PK' AND name IN(SELECT nameFROM sysindexesWHERE indid IN(SELECT indidFROM sysindexkeysWHERE id = syscolumns.id AND colid = syscolumns.colid))) THEN '√' ELSE '' END AS 主键FROM syscolumns INNER JOINsysobjects ON sysobjects.id = syscolumns.id INNER JOINsystypes ON syscolumns.xtype = systypes.xtype LEFT OUTER JOINsysproperties properties ON syscolumns.id = properties.id AND syscolumns.colid = properties.smallid LEFT OUTER JOINsysproperties ON sysobjects.id = sysproperties.id AND sysproperties.smallid = 0 LEFT OUTER JOINsyscomments ON syscolumns.cdefault = syscomments.idWHERE (sysobjects.xtype = 'U')

标签: Sql Server 数据库