Comparaison de SMO et SQL-DMO
SMO (SQL Server Management Objects) est une modèle d'objet de code managé qui a été introduit dans SQL Server 2005. Il remplace SQL-DMO (SQL Distributed Management Objects). Comme SQL-DMO, SMO fournit des objets utilisés pour gérer SQL Server. Le modèle de programmation a été amélioré et le nombre d'objets a été augmenté pour inclure des fonctionnalités introduites dans SQL Server 2005. À partir de SQL Server 2008, SMO est basé sur les classes SFC (SQL Server Foundation classes). Le modèle DMF (modèle d'objet de gestion basée sur des stratégies) a également été introduit dans
SMO inclut les fonctionnalités suivantes :
Performances améliorées. Les objets sont chargés uniquement lorsqu'ils sont référencés de manière spécifique. Les propriétés de l'objet ne sont que partiellement chargées lorsque l'objet est créé. Les objets restants sont chargés lorsqu'ils sont référencés directement.
Capture et exécution groupée d'instructions Transact-SQL. Les instructions peuvent être capturées et envoyées sous forme de lot pour améliorer les performances réseau.
Gestion des services SQL Server avec le fournisseur WMI. Les services SQL Server peuvent être démarrés, arrêtés et suspendus par programme.
Écriture de scripts avancés. Des scripts Transact-SQL peuvent être générés pour recréer des objets SQL Server qui décrivent des relations à d'autres objets sur l'instance de SQL Server.
Le transfert de données tire parti des fonctionnalités de script et utilise Integration Services.
Utilisation de noms de ressource uniques (URN).
Gestion des événements qui permet au développeur d'insérer le code exécuté lorsqu'un événement spécifique se produit.
Exceptions utilisées pour identifier les erreurs spécifiques à SMO.
Meilleure couverture des objets de base de données. Par exemple, l'objet ForeignKey autorise un meilleur contrôle des clés étrangères.
SMO représente également sous forme de nouveaux objets ou propriétés de nombreux composants et fonctionnalités introduits dans SQL Server 2005. Ces nouveaux composants et fonctionnalités sont les suivants :
Partitionnement d'index et de table pour le stockage des données sur un schéma de partition. Pour plus d'informations, consultez Concepts sur les tables et les index partitionnés.
Points de terminaison HTTP pour la gestion des requêtes SOAP. Pour plus d'informations, consultez Prise en charge des travaux par les sessions SOAP.
Niveau d'isolement de capture instantanée et contrôle de version au niveau de la ligne pour plus de concurrence. Pour plus d'informations, consultez Utilisation du niveau d'isolement de capture instantanée.
La collection de schémas XML, les index XML et le type de données XML permettent la validation et le stockage des données XML. Pour plus d'informations, consultez Utilisation de schémas XML et Utilisation de types de données XML.
Bases de données de point de vue pour la création de copies en lecture seule de bases de données.
Prise en charge de Service Broker pour la communication basée sur les messages. Pour plus d'informations, consultez SQL Server Service Broker.
Prise en charge des synonymes pour les noms d'objets multiples de la base de données SQL Server. Pour plus d'informations, consultez Description des synonymes.
La gestion de la messagerie de base de données permet la création de serveurs, de profils et de comptes de messagerie électronique dans SQL Server. Pour plus d'informations, consultez Messagerie de base de données.
Prise en charge des serveurs inscrits pour l'enregistrement des informations de connexion. Pour plus d'informations, consultez Gestion des serveurs inscrits.
Trace et relecture d'événements SQL Server. Pour plus d'informations, consultez Utilisation du Générateur de profils SQL Server et Utilisation de la trace SQL.
Prise en charge des certificats et clés pour le contrôle de sécurité. Pour plus d'informations, consultez Hiérarchie de chiffrement.
Déclencheurs DDL pour l'ajout de fonctionnalités lorsque les événements DDL se produisent. Pour plus d'informations, consultez Déclencheurs DDL.