查询sql2005&2008全部表信息
1 如果是查询sql server 2000,把sys.extended_properties修改为SysProperties 2 3 SELECT 4 表名 = CASE WHEN A.COLORDER=1 THEN D.NAME ELSE ‘‘ END, 5 表说明 = CASE WHEN A.COLORDER=1 THEN ISNULL(F.VALUE,‘‘) ELSE ‘‘ END, 6 列序号 = A.COLORDER, 7 列名 = A.NAME, 8 标识 = CASE WHEN COLUMNPROPERTY( A.ID,A.NAME,‘ISIDENTITY‘)=1 THEN ‘√‘ELSE ‘‘ END, 9 主鍵 = CASE WHEN EXISTS(SELECT 1 FROM SYSOBJECTS WHERE XTYPE=‘PK‘ AND PARENT_OBJ=A.ID AND NAME IN ( 10 SELECT NAME FROM SYSINDEXES WHERE INDID IN( 11 SELECT INDID FROM SYSINDEXKEYS WHERE ID = A.ID AND COLID=A.COLID))) THEN ‘√‘ ELSE ‘‘ END, 12 类型 = B.NAME, 13 字节数 = A.LENGTH, 14 长度 = COLUMNPROPERTY(A.ID,A.NAME,‘PRECISION‘), 15 小数位数 = ISNULL(COLUMNPROPERTY(A.ID,A.NAME,‘SCALE‘),0), 16 允许空 = CASE WHEN A.ISNULLABLE=1 THEN ‘√‘ELSE ‘‘ END, 17 默认值 = ISNULL(E.TEXT,‘‘), 18 字段说明 = ISNULL(G.[VALUE],‘‘) 19 FROM 20 SYSCOLUMNS A 21 LEFT JOIN 22 SYSTYPES B 23 ON 24 A.XUSERTYPE=B.XUSERTYPE 25 INNER JOIN 26 SYSOBJECTS D 27 ON 28 A.ID=D.ID AND D.XTYPE=‘U‘ AND D.NAME<>‘DTPROPERTIES‘ 29 LEFT JOIN 30 SYSCOMMENTS E 31 ON 32 A.CDEFAULT=E.ID 33 LEFT JOIN 34 sys.extended_properties G 35 ON 36 A.ID=G.major_id AND A.COLID=G.minor_id 37 LEFT JOIN 38 sys.extended_properties F 39 ON 40 D.ID=F.major_id AND F.minor_id=0 41 ORDER BY 42 A.ID,A.COLORDER
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。