2008-11-24 7 views

Répondre

1

Les tables sont relativement faciles, sys.columns et sys.types vous permettent de lier des colonnes à des types. La requête ci-dessous va l'obtenir.

select s.name 
     ,o.name 
     ,c.name 
     ,t.name 
    from sys.schemas s 
    join sys.objects o 
    on o.schema_id = s.schema_id 
    join sys.columns c 
    on c.object_id = o.object_id 
    join sys.types t 
    on c.user_type_id = t.user_type_id 
where t.name = 'Foo' 

EDIT: comme G Mastros l'a montré ci-dessus, vous pouvez obtenir des paramètres avec une requête similaire.

select s.name 
     ,o.name 
     ,p.name 
     ,t.name 
    from sys.schemas s 
    join sys.objects o 
    on o.schema_id = s.schema_id 
    join sys.parameters p 
    on p.object_id = o.object_id 
    join sys.types t 
    on p.user_type_id = t.user_type_id 
where t.name = 'Foo' 
3

Pour les tables et vues:

Select * 
From Information_Schema.Columns 
Where DOMAIN_NAME = 'YourUserDefinedTypeName' 

Pour connaître les procédures et fonctions:

Select * 
From Information_Schema.PARAMETERS 
Where USER_DEFINED_TYPE_NAME = 'YourUserDefinedTypeName' 
+0

2e a travaillé pour le type de table défini par l'utilisateur –

Questions connexes