擷取M$ SQL Server使用者表的欄位資訊

來源:互聯網
上載者:User
 1 USE database1
 2 SELECT
 3   表名   = CASE a.colorder WHEN 1 THEN c.name ELSE '' END,
 4   序     = a.colorder,
 5   欄位名 = a.name,
 6   標識   = CASE COLUMNPROPERTY(a.id,a.name,'IsIdentity') WHEN 1 THEN '√' ELSE '' END,
 7   主鍵   = CASE
 8     WHEN EXISTS (
 9       SELECT *
10       FROM sysobjects
11       WHERE xtype='PK' AND name IN (
12         SELECT name
13         FROM sysindexes
14         WHERE id=a.id AND indid IN (
15           SELECT indid
16           FROM sysindexkeys
17           WHERE id=a.id AND colid IN (
18             SELECT colid
19             FROM syscolumns
20             WHERE id=a.id AND name=a.name
21           )
22         )
23       )
24     )
25     THEN '√'
26     ELSE ''
27   END,
28   類型   = b.name,
29   位元組數 = a.length,
30   長度   = COLUMNPROPERTY(a.id,a.name,'Precision'),
31   小數   = CASE ISNULL(COLUMNPROPERTY(a.id,a.name,'Scale'),0)
32     WHEN 0 THEN ''
33     ELSE CAST(COLUMNPROPERTY(a.id,a.name,'Scale') AS VARCHAR)
34   END,
35   允許空 = CASE a.isnullable WHEN 1 THEN '√' ELSE '' END,
36   預設值 = ISNULL(d.[text],''),
37   說明   = ISNULL(e.[value],'')
38 FROM syscolumns a
39   LEFT  JOIN systypes      b ON a.xtype=b.xusertype
40   INNER JOIN sysobjects    c ON a.id=c.id AND c.xtype='U' AND c.name<>'dtproperties'
41   LEFT  JOIN syscomments   d ON a.cdefault=d.id
42   LEFT  JOIN sysproperties e ON a.id=e.id AND a.colid=e.smallid
43 ORDER BY c.name, a.colorder
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.