Ik wil de naam van alle kolommen van een tabel opvragen. Ik heb gevonden hoe dit te doen in:
Maar ik wil graag weten: hoe kan dit worden gedaan in Microsoft SQL Server (2008 in mijn geval)?
U kunt deze informatie en nog veel meer verkrijgen door de Information Schema views op te vragen.
Deze voorbeeld query:
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = N'Customers'
Kan over al deze DB objecten gemaakt worden:
U kunt de opgeslagen procedure sp_columns gebruiken, die informatie over alle kolommen van een gegeven tabel zou teruggeven. Meer info kan hier worden gevonden http://msdn.microsoft.com/en-us/library/ms176077.aspx
Je kunt het ook doen met een SQL query. Zoiets als dit zou moeten helpen:
SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('dbo.yourTableName')
Of een variatie zou zijn:
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
Dit krijgt alle kolommen van alle tabellen, gerangschikt op tabelnaam en dan op kolomnaam.