mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 20097 31 janv. 2005 à 12:09
En cadeau, je te donne aussi les types de champ et leur longueur
select
c.name as "Column Name",
t.name as "Data Type",
c.length as "Length"
from syscolumns c, sysobjects o, systypes t
where c.id = o.id
and o.name ='VARIATIONS'
and t.xtype = c.xtype
order by colid
mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 20097 31 janv. 2005 à 17:20
syscolumns, sysobjects et systypes sont 3 tables systèmes des base SQLServer
sysobjects : table qui contient la liste des objets de la base (tables utilisateurs, tables systèmes, nom des primary keys, nom des contraintes, nom des procédures stockées ....). Chaque élément est identifié par le champ Id et le champ Name
syscolumns : table qui contient la liste des champs de toutes les tables (utilisateurs et systèmes) + info spécifiques à chaque champ (type de donnée, longueur du champ, "nullable" ou non ...) . Chaque élément est identifié par le champ Name. La table associée à chaque colonne se retrouve par le champ Id. ColId est un champ de syscolumns qui donne l'ordre des colonnes dans une table (c'est pas super utile mais ça peut servir quand tu fais un INSERT sans déclarer les champs).
systypes : contient les types de données systèmes (int, nvarchar ...). Chaque champ d'une table a un type de données que l'on retrouve dans cette table grâce au champ xtype