教您查询SQL字段属性的sql语句写法

想要查看SQL字段属性,应该如何实现呢?下面为您介绍的就是查询SQL字段属性的sql语句写法,希望对您学习SQL字段属性方面有所启迪。

 
 
 
  1. SELECT sysobjects.name AS tableName, syscolumns.name AS field, properties.[value] AS fieldRemark, systypes.name AS type,   
  2.  
  3. syscolumns.length, ISNULL(COLUMNPROPERTY(syscolumns.id, syscolumns.name, 'Scale'), 0) AS [decimal], syscolumns.isnullable AS isnulls,   
  4.  
  5. CASE WHEN syscomments.text IS NULL THEN '' ELSE syscomments.text END AS [Default],   
  6.  
  7. CASE WHEN COLUMNPROPERTY(syscolumns.id, syscolumns.name, 'IsIdentity') = 1 THEN 'Y' ELSE 'N' END AS [id], CASE WHEN EXISTS  
  8.  
  9. (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)))   
  10. THEN 'Y' ELSE 'N' END AS PK FROM syscolumns INNER JOIN sysobjects ON sysobjects.id = syscolumns.id INNER JOIN  
  11. systypes ON syscolumns.xtype = systypes.xtype LEFT OUTER JOIN sysproperties properties ON syscolumns.id = properties.id AND   
  12. syscolumns.colid = properties.smallid LEFT OUTER JOIN sysproperties ON sysobjects.id = sysproperties.id AND   
  13. sysproperties.smallid = 0 LEFT OUTER JOIN syscomments ON syscolumns.cdefault = syscomments.id  
  14. WHERE (sysobjects.xtype = 'U') and systypes.name<>'sysname' order by sysobjects.name  
  15.  
  16. 使用:把这段代码拷贝到查询分析器内选中相关查询的数据库名即可。  
  17. //符合我自己使用的查询数据库字典方法:SQL server 200  
  18.  
  19. SELECT sysobjects.name AS 表名,--获取数据库表名  
  20.  
  21.        CASE WHEN EXISTS (SELECT 1 FROM sysobjects WHERE xtype = 'PK' AND name IN  
  22.  
  23.                          (SELECT name FROM sysindexes WHERE indid IN   
  24.  
  25.                          (SELECT indid FROM sysindexkeys WHERE id = syscolumns.id AND colid = syscolumns.colid)))   
  26.  
  27.                          THEN 'K' ELSE '' END AS PK,--是否是主键  
  28. syscolumns.name AS 字段名,   
  29. properties.[value] AS 字段描述,  
  30. systypes.name AS 数据类型,   
  31. syscolumns.length AS 长度,   
  32. CASE syscolumns.isnullable WHEN '1' THEN '是' ELSE '否'END AS 允许为空,   
  33.  
  34.        CASE WHEN syscomments.text IS NULL THEN '' ELSE syscomments.text END AS 默认值  
  35.  
  36.        FROM syscolumns INNER JOIN  
  37.  
  38.                          sysobjects ON sysobjects.id = syscolumns.id INNER JOIN  
  39.  
  40.                          systypes ON syscolumns.xtype = systypes.xtype LEFT OUTER JOIN   
  41.  
  42.                          sysproperties properties ON syscolumns.id = properties.id AND   
  43.  
  44.                          syscolumns.colid = properties.smallid LEFT OUTER JOIN   
  45.  
  46.                          sysproperties ON sysobjects.id = sysproperties.id AND sysproperties.smallid = 0 LEFT OUTER JOIN  
  47.  
  48.                          syscomments ON syscolumns.cdefault = syscomments.id  
  49.  
  50.        WHERE (sysobjects.xtype = 'U') and systypes.name<>'sysname'   
  51. order by sysobjects.name desc  

【编辑推荐】

SQL约束控制语句

带您深入了解sql字段类型

教您如何获取SQL字段默认值

SQL修改字段默认值

SQL Server时间算法大全

网站栏目:教您查询SQL字段属性的sql语句写法
本文来源:http://www.csdahua.cn/qtweb/news29/315079.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网