教您查询SQL字段属性的sql语句写法
作者:应用开发 来源:IT科技 浏览: 【大中小】 发布时间:2025-11-05 06:24:49 评论数:

复制SELECT sysobjects.name AS tableName,教查 syscolumns.name AS field, properties.[value] AS fieldRemark, systypes.name AS type, syscolumns.length, ISNULL(COLUMNPROPERTY(syscolumns.id, syscolumns.name, Scale), 0) AS [decimal], syscolumns.isnullable AS isnulls, CASE WHEN syscomments.text IS NULL THEN ELSE syscomments.text END AS [Default], CASE WHEN COLUMNPROPERTY(syscolumns.id, syscolumns.name, IsIdentity) = 1 THEN Y ELSE N END AS [id], 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 = syscolumns.id AND colid = syscolumns.colid))) THEN Y ELSE N END AS PK FROM syscolumns INNER JOIN sysobjects ON sysobjects.id = syscolumns.id INNER JOIN systypes ON syscolumns.xtype = systypes.xtype LEFT OUTER JOIN sysproperties properties ON syscolumns.id = properties.id AND syscolumns.colid = properties.smallid LEFT OUTER JOIN sysproperties ON sysobjects.id = sysproperties.id AND sysproperties.smallid = 0 LEFT OUTER JOIN syscomments ON syscolumns.cdefault = syscomments.id WHERE (sysobjects.xtype = U) and systypes.name<>sysname order by sysobjects.name 使用:把这段代码拷贝到查询分析器内选中相关查询的数据库名即可。 //符合我自己使用的源码下载询S写法查询数据库字典方法:SQL server 200 SELECT sysobjects.name AS 表名,--获取数据库表名 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 = syscolumns.id AND colid = syscolumns.colid))) THEN K ELSE END AS PK,--是否是服务器租用主键 syscolumns.name AS 字段名, properties.[value] AS 字段描述, systypes.name AS 数据类型, syscolumns.length AS 长度, CASE syscolumns.isnullable WHEN 1 THEN 是 ELSE 否END AS 允许为空, CASE WHEN syscomments.text IS NULL THEN ELSE syscomments.text END AS 默认值 FROM syscolumns INNER JOIN sysobjects ON sysobjects.id = syscolumns.id INNER JOIN systypes ON syscolumns.xtype = systypes.xtype LEFT OUTER JOIN sysproperties properties ON syscolumns.id = properties.id AND syscolumns.colid = properties.smallid LEFT OUTER JOIN sysproperties ON sysobjects.id = sysproperties.id AND sysproperties.smallid = 0 LEFT OUTER JOIN syscomments ON syscolumns.cdefault = syscomments.id WHERE (sysobjects.xtype = U) and systypes.name<>sysname order by sysobjects.name desc 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.香港云服务器
