萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> sql server教程 >> 獲取SQL Server數據字典的經典SQL語句

獲取SQL Server數據字典的經典SQL語句

本文主要介紹了一個獲取sql server數據字典的經典SQL語句,大家可以根據各自的實際情況對這段語句進行相應的修改。

SELECT sysobjects.name AS [table], sysproperties.[value] AS 表說明, 
syscolumns.name AS field, properties.[value] AS 字段說明, systypes.name AS type, 
syscolumns.length, ISNULL(COLUMNPROPERTY(syscolumns.id, syscolumns.name, 
'Scale'), 0) AS 小數位數, syscolumns.isnullable AS isnull, 
CASE WHEN syscomments.text IS NULL 
THEN '' ELSE syscomments.text END AS [Default], 
CASE WHEN COLUMNPROPERTY(syscolumns.id, syscolumns.name, 'IsIdentity') 
= 1 THEN '√' ELSE '' END 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 '√' ELSE '' 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')

關鍵詞:

copyright © 萬盛學電腦網 all rights reserved