Monday, June 07, 2010

SQL script to get table metadata form a SQL server

// SQL script to get table metadata form a SQL server

SELECT u.name + '.' + t.name AS [table], c.name AS [column]
FROM sys.sysobjects AS t INNER JOIN
sys.sysusers AS u ON u.uid = t.uid LEFT OUTER JOIN
sys.extended_properties AS td ON td.major_id = t.id AND td.minor_id = 0 AND td.name = 'MS_Description' INNER JOIN
sys.syscolumns AS c ON c.id = t.id LEFT OUTER JOIN
sys.extended_properties AS cd ON cd.major_id = c.id AND cd.minor_id = c.colid AND cd.name = 'MS_Description'
WHERE (t.type = 'u')
ORDER BY t.name, c.colorder