Tâche de transfert d'objets SQL Server
La tâche de transfert d'objets SQL Server transfère un ou plusieurs types d'objets d'une base de données SQL Server entre des instances de SQL Server. Par exemple, la tâche peut copier des tables et des procédures stockées. Selon la version de SQL Server utilisée comme source, différents types d'objets sont disponibles pour la copie. Par exemple, seule une base de données SQL Server inclut des schémas et des agrégats définis par l'utilisateur.
La tâche de transfert d'objets SQL Server peut être configurée pour transférer tous les objets, tous les objets d'un certain type, ou seulement les objets spécifiés d'un type. Par exemple, vous pouvez choisir de ne copier que les tables sélectionnées dans la base de données AdventureWorks2008R2.
Si la tâche de transfert d'objets SQL Server transfère des tables, vous pouvez spécifier les types des objets associés aux tables à copier avec les tables. Par exemple, vous pouvez spécifier que les clés primaires sont copiées avec les tables.
Les rôles de serveur, les rôles et les utilisateurs de la base de données spécifiée peuvent être copiés, ainsi que les autorisations pour les objets transférés. En copiant les utilisateurs, les rôles et les autorisations associés avec les objets, les objets transférés peuvent être opérationnels immédiatement sur le serveur de destination.
Pour améliorer la fonctionnalité des objets transférés, vous pouvez configurer la tâche de transfert d'objets SQL Server pour qu'elle inclue des noms de schéma, des données, des propriétés étendues d'objets transférés et des objets dépendants dans le transfert. Lors de la copie de données, vous pouvez spécifier s'il faut remplacer ou ajouter les données existantes.
À l'exécution, la tâche de transfert d'objets SQL Server se connecte aux serveurs source et destination en utilisant deux gestionnaires de connexions SMO. Les gestionnaires de connexions SMO sont configurés indépendamment de la tâche de transfert d'objets SQL Server, puis référencés dans celle-ci. Les gestionnaires de connexions SMO spécifient le serveur et le mode d'authentification à utiliser lors de l'accès au serveur. Pour plus d'informations, consultez Gestionnaire de connexions SMO.
Objets à transférer
Le tableau suivant présente la liste des types d'objets qui peuvent être copiés. La colonne de version identifie la version de SQL Server que la tâche peut utiliser en tant que source pour inclure le type d'objet dans un transfert.
Objet |
Version |
---|---|
Tables |
SQL Server 2000 ou SQL Server |
Vues |
SQL Server 2000 ou SQL Server |
Procédures stockées |
SQL Server 2000 ou SQL Server |
Fonctions définies par l'utilisateur |
SQL Server 2000 ou SQL Server |
Valeurs par défaut |
SQL Server 2000 ou SQL Server |
Types de données définis par l'utilisateur |
SQL Server 2000 ou SQL Server |
Fonctions de partition |
SQL Server uniquement |
Schémas de partition |
SQL Server uniquement |
Schémas |
SQL Server uniquement |
Assemblys |
SQL Server uniquement |
Agrégats définis par l'utilisateur |
SQL Server uniquement |
Types définis par l'utilisateur |
SQL Server uniquement |
Collection de schémas XML |
SQL Server uniquement |
Les types de données définis par l'utilisateur qui ont été créés dans une instance de SQL Server 2000 sont basés sur les types de données système de SQL Server 2000. Lorsqu'ils sont transférés vers SQL Server, ces types de données définis par l'utilisateur sont créés à l'aide des types de données système de SQL Server, puis enregistrés en tant que types de données alias. Pour plus d'informations sur les types de données de SQL Server, consultez Types de données (Moteur de base de données).
Les types définis par l'utilisateur (UDT) qui ont été créés dans une instance de SQL Server possèdent des dépendances avec les assemblys CLR (Common Language Runtime). Si vous utilisez la tâche de transfert d'objets SQL Server pour transférer des types UDT, vous devez également configurer la tâche de transfert d'objets dépendants. Pour transférer des objets dépendants, affectez à la propriété IncludeDependentObjects la valeur True.
Options des tables
Lors de la copie de tables, vous pouvez indiquer les types des éléments associés aux tables à inclure dans le processus de copie. Les types d'éléments suivants peuvent être copiés avec la table associée :
Index
Déclencheurs
Index de texte intégral
Clés primaires
Clés étrangères
Vous pouvez également indiquer si le script généré par la tâche est au format Unicode.
Options de destination
Vous pouvez configurer la tâche de transfert d'objets SQL Server pour qu'elle inclue des noms de schéma, des données, des propriétés étendues d'objets transférés et des objets dépendants dans le transfert. Si des données sont copiées, la tâche peut remplacer les données existantes ou les conserver.
Certaines options ne s'appliquent qu'à SQL Server. Par exemple, seul SQL Server prend en charge les schémas.
Options de sécurité
La tâche de transfert d'objets SQL Server peut inclure des utilisateurs et des rôles de niveau base de données SQL Server de la source, des ouvertures de session SQL Server, ainsi que les autorisations pour les objets transférés. Par exemple, le transfert peut inclure les autorisations sur les tables transférées.
Transfert d'objets entre des instances de SQL Server
La tâche de transfert d'objets SQL Server prend en charge une source et une destination SQL Server 2000 ou SQL Server. Chacune des versions peut être utilisée indifféremment comme source ou comme destination.
Événements
La tâche génère un événement d'information qui indique l'objet transféré et un événement d'avertissement lorsque qu'un objet est remplacé. Un événement d'information est également généré pour les actions telles que la troncation des tables de base de données.
La tâche de transfert d'objets SQL Server n'indique pas les stades intermédiaires de l'avancement du transfert des objets : elle signale la tâche comme réalisée à 0 % ou à 100 %.
Valeur d'exécution
La valeur d'exécution, stockée dans la propriété ExecutionValue de la tâche, retourne le nombre d'objets transférés. En affectant une variable définie par l'utilisateur à la propriété ExecValueVariable de la tâche de transfert d'objets SQL Server, les informations sur le transfert d'objets peuvent être mises à la disposition d'autres objets du package. Pour plus d'informations, consultez Variables Integration Services et Utilisation de variables dans des packages.
Entrées du journal
La tâche de transfert d'objets SQL Server comporte les entrées de journal personnalisées suivantes :
TransferSqlServerObjectsTaskStartTransferringObjects Cette entrée du journal indique que le transfert a commencé. L'entrée du journal inclut l'heure de début.
TransferSqlServerObjectsTaskFinishedTransferringObjects Cette entrée du journal indique que le transfert est terminé. L'entrée du journal inclut l'heure de fin.
En outre, une entrée de journal pour l'événement OnInformation indique le nombre d'objets pour les types d'objet qui ont été sélectionnés pour le transfert, le nombre d'objets transférés, ainsi que les actions telles que la troncation de tables lorsque des données sont transférées avec les tables. Une entrée de journal pour l'événement OnWarning est écrite pour chaque objet de destination remplacé.
Sécurité et autorisations
L'utilisateur doit avoir l'autorisation de parcourir les objets sur le serveur source et de supprimer ou de créer des objets sur le serveur de destination. L'utilisateur doit en outre avoir accès à la base de données spécifiée et aux objets de base de données.
Configuration de la tâche de transfert d'objets SQL Server
Vous pouvez définir les propriétés par le biais du concepteur SSIS ou par programme.
Pour plus d'informations sur les propriétés définissables dans le concepteur SSIS, cliquez sur l'une des rubriques suivantes :
Pour plus d'informations sur la définition de ces propriétés dans le concepteur SSIS, cliquez sur la rubrique suivante :
Configuration de la tâche de transfert d'objets SQL Server par programme
Pour plus d'informations sur la définition par programme de ces propriétés, cliquez sur la rubrique suivante :
|