SQL2005列出表名,主键,列

SELECT D.Name as TableName, A.colorder AS ColOrder, A.name AS Name,  
  COLUMNPROPERTY(A.ID,A.Name, 'IsIdentity') AS IsIdentity,  
  CASE WHEN EXISTS
  (SELECT 1
  FROM dbo.sysobjects
  WHERE Xtype = 'PK' AND Name IN
  (SELECT Name
  FROM sysindexes
  WHERE indid IN
  (SELECT indid
  FROM sysindexkeys
  WHERE ID = A.ID AND colid = A.colid)))  
  THEN 1 ELSE 0 END AS [PrimaryKey],  
  B.name AS [ColType],
  A.length AS [ColLength],
  A.xprec AS [精度],
  A.xscale AS [小数],
  CASE WHEN A.isnullable = 1 THEN 1 ELSE 0 END AS [IsNullAble],  
ISNULL(E.text, ' ') AS [默认值],  
  ISNULL(G.[value], ' ') AS [说明]
FROM dbo.syscolumns A LEFT OUTER JOIN
  dbo.systypes B ON A.xtype = B.xusertype INNER JOIN
  dbo.sysobjects D ON A.id = D.id AND D.xtype = 'U' AND  
  D.name <> 'dtproperties' LEFT OUTER JOIN
  dbo.syscomments E ON A.cdefault = E.id 
left join sys.extended_properties g 
on a.id=g.class and 
a.colid=g.minor_id
left join sys.extended_properties f on d.id=f.class and f.minor_id=0
--WHERE D.Name='tablename' --如果找指定表,把注释去掉
ORDER BY 1, 2
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值