我想查詢表的全部列的名稱。 我找到了如何作到這一點: sql
但我須要知道: 如何在Microsoft SQL Server (在個人狀況下爲2008)中完成此操做? 架構
您能夠經過查詢信息架構視圖來獲取此信息以及更多信息 。 dom
此示例查詢: spa
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = N'Customers'
能夠在全部這些DB對象上進行: code
您能夠使用存儲過程sp_columns,它將返回與給定表的全部列有關的信息。 更多信息能夠在這裏找到http://msdn.microsoft.com/en-us/library/ms176077.aspx orm
您也能夠經過SQL查詢來完成。 這樣的事情應該有所幫助: 對象
SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('dbo.yourTableName')
或者變化是: 排序
SELECT o.Name, c.Name FROM sys.columns c JOIN sys.objects o ON o.object_id = c.object_id WHERE o.type = 'U' ORDER BY o.Name, c.Name
這將獲取全部表中的全部列,按表名排序,而後按列名排序。 get
經過使用此查詢,您能夠獲得答案: io
select Column_name from Information_schema.columns where Table_name like 'table name'
它將檢查給定的table
是否爲Base Table 。
SELECT T.TABLE_NAME AS 'TABLE NAME', C.COLUMN_NAME AS 'COLUMN NAME' FROM INFORMATION_SCHEMA.TABLES T INNER JOIN INFORMATION_SCHEMA.COLUMNS C ON T.TABLE_NAME=C.TABLE_NAME WHERE T.TABLE_TYPE='BASE TABLE' AND T.TABLE_NAME LIKE 'Your Table Name'
SELECT name FROM sys.columns WHERE object_id = OBJECT_ID('TABLE_NAME')
TABLE_NAME
是您的表格