Sauf si vous écrivez une application qui vous savez pour un fait besoin d'être portable ou que vous ne voulez tout de l'information de base, je voudrais juste valeur par défaut à l'aide de la propriété SQL Server système de points de vue pour commencer.
L' Information_Schema
vues afficher uniquement les objets qui sont compatibles avec la norme SQL-92. Cela signifie qu'il n'y est aucune information de schéma vue de même assez constructions de base, tels que l'index (ce ne sont pas définis dans la norme et sont partis comme des détails de mise en œuvre.) Encore moins une quelconque SQL Server fonctions exclusives.
Même pour le pain et le beurre SQL constructions telles que les contraintes de clé étrangère de la Information_Schema
vues peuvent être considérablement moins efficace de travailler avec de l' sys.
vues qu'ils n'exposent pas les id d'objet qui permettrait efficace de l'interrogation.
Voir, par exemple, la question de requête SQL ralentissement de 1 seconde à 11 minutes - pourquoi? et les plans d'exécution.
INFORMATION_SCHEMA
sys