Vous savez tous probablement que l’on peut, en utilisant une procédure stockée, rajouter des descriptions aux colonnes de nos tables SQL 2005.
EXEC sys.sp_addextendedproperty
@name=N'MS_Description',
@value=N'la description à rajouter à la colonne' , /*à modifier*/
@level0type=N'SCHEMA',
@level0name=N'dbo',
@level1type=N'TABLE',
@level1name=N'la_table', /*à modifier*/
@level2type=N'COLUMN',
@level2name=N'la_colonne' /*à modifier*/
Mais c’est nettement plus compliqué de récupérer cette information donc comme un petit exemple vaut mieux qu’un long discours voici la marche à suivre ;-)
SELECT
[Table Name] = OBJECT_NAME(c.object_id),
[Column Name] = c.name,
[Description] = ex.value
FROM
sys.columns c
LEFT OUTER JOIN
sys.extended_properties ex
ON
ex.major_id = c.object_id
AND ex.minor_id = c.column_id
AND ex.name = 'MS_Description'
WHERE
OBJECTPROPERTY(c.object_id, 'IsMsShipped')=0
-- AND OBJECT_NAME(c.object_id) = 'your_table'
ORDER
BY OBJECT_NAME(c.object_id), c.column_id