Blog ENI : Toute la veille numérique !
💥 Un livre PAPIER acheté
= La version EN LIGNE offerte pendant 1 an !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. SQL Server 2022
  3. Transfert des données
Extrait - SQL Server 2022 Apprendre à administrer un serveur de base de données
Extraits du livre
SQL Server 2022 Apprendre à administrer un serveur de base de données
1 avis
Revenir à la page d'achat du livre

Transfert des données

Importation et exportation de données

1. Présentation

L’importation des données consiste à récupérer des données depuis une source extérieure à SQL Server (autre serveur SQL Server, Oracle, fichier ASCII, base Access...) et à stocker ces données dans une ou plusieurs tables d’une base SQL Server. L’exportation représente l’opération inverse, le contenu d’une table, ou le résultat d’une requête est projeté dans un fichier ASCII, ou directement dans une base Access par exemple.

L’importation est en général une opération ponctuelle qui intervient entre la création et la conception de base et la mise en service de la base. Lors de cette étape d’importation, toutes les données, provenant d’un système de gestion de données ancien, sont intégrées dans SQL Server. Une fois la migration terminée, il est possible de travailler avec les données contenues dans SQL Server.

Cependant, l’importation peut parfois être une opération réalisée régulièrement. C’est le cas notamment lorsque la base SQL sert à éditer des analyses sur des données stockées sur des systèmes différents.

Les opérations d’exportation sont normalement moins fréquentes. En effet, si les données doivent être manipulées depuis des outils comme Microsoft Access ou Excel, il est préférable de travailler directement sur les données stockées dans SQL Server plutôt que de réaliser une exportation pour travailler avec une copie locale des données. L’exportation reste la solution idéale lorsqu’un utilisateur souhaite établir des calculs sur les données...

L’utilitaire BCP

BCP (Bulk Copy Program) est un puissant utilitaire en ligne de commande. Il est bien connu des utilisateurs des versions précédentes de SQL Server. Il est utilisé lorsque le volume des transferts entre fichiers texte et base SQL Server est important.

BCP permet d’exporter les données d’une table ou d’une requête SQL vers un fichier texte ou bien d’importer un fichier texte dans une table. Lors de l’utilisation il est donc nécessaire de préciser la source et la destination des données, ainsi qu’un nom d’utilisateur et un mot de passe pour se connecter au serveur.

L’utilisation de BCP ne nécessite pas de connaissance particulière en Transact SQL, sauf dans le cas où l’exportation s’appuie sur une requête SQL. Par contre, la description du fichier de données est un point de passage obligatoire.

1. Syntaxe

Elle peut paraître lourde dans un premier temps mais il est possible de fixer un grand nombre d’options, ce qui donne beaucoup de souplesse lors de l’utilisation de bcp.

bcp {nom_complet_objet|"requête"} 
{in | out | queryout| format} fichier_de_données 
[-mmaximum_d'erreurs] [-ffichier_de_format] [-x] 
[-efichier_d'erreurs] [-dnomBasedeDonnées] 
[-Fpremière_ligne] [-Ldernière_ligne]  
[-btaille_de_lot_d'instructions] 
[-n] [-c] [-w] [-N] [-V{80|90|100}] [-q][-n]  
[-Cpage_de_code] 
[-tfin_de_champ] [-rfin_de_ligne] 
[-ifichier_d'entrée] [-ofichier_de_sortie]  
[-ataille_de_paquet] [-kReadOnly] 
[-Snom_du_serveur] [-Uid_de_connexion]  
[-Pmot_de_passe] [-q] 
[-T] [-v] [-R] [-k] [-E] [-h"option 
[,...n]"nom_complet_objet|"requête" 

Il s’agit de donner le nom complet de l’objet...

SSIS

1. Présentation

De plus en plus, le besoin se fait sentir de consolider les données réparties en un point central, puis de les déployer sous un format ou bien un autre. Le principal problème rencontré lors de ce type d’opération de centralisation de données est le format des données. En effet, lorsque les informations sont réparties sur différents systèmes et sur différents serveurs, il y a très peu de chance que ce soit toujours au même format. Avec SQL Server Integration Services, il est possible d’importer, d’exporter et de transformer des données entre plusieurs sources hétérogènes.

SSIS peut également être utilisée pour exporter les données depuis la base vers un outil d’analyse. Par exemple, les données intégrées par l’intermédiaire de SSIS peuvent être consolidées au niveau de la base, puis il est possible de faire de nouveau appel à SSIS pour les exporter vers un fichier Excel.

SSIS est principalement un outil destiné à l’informatique décisionnelle (Business Intelligence). Une utilisation simplifiée de cet outil est disponible sous la forme d’un assistant dans SQL Server Management Studio. C’est cet aspect qui est présenté ici car il permet simplement de faire des opérations d’import et d’export des données entre des formats différents.

SSIS est un ETL et, à ce titre, permet de stocker une suite d’opérations visant à extraire, puis transformer les données afin que le nouveau découpage respecte les contraintes de la destination. Enfin, les informations sont chargées dans la cible. Ces opérations sont sauvegardées dans un package SSIS.

Pour pouvoir réaliser...

Attachement et détachement d’une base de données

Il est possible de déplacer facilement et rapidement les fichiers de données et journaux d’une base de données SQL Server entre deux instances SQL Server. Le format des fichiers de données est le même, que le service SQL Server s’exécute en mode 32 bits ou bien 64 bits.

Pour transférer ces fichiers il faut procéder en deux étapes : détacher la base de l’instance sur laquelle elle s’exécute puis attacher les fichiers constitutifs de la base sur la nouvelle instance. Ces opérations se déroulent facilement à condition de respecter quelques critères qui sont précisés ci-dessous au niveau du détachement d’une base de données.

Il est possible de migrer une base de données d’une version à autre de SQL Server à condition que la version du serveur destinataire soit supérieure ou égale à celle du serveur source. L’importation ne sera possible que si les fichiers sont accessibles lors de l’attachement. Dans le cas d’une reconstruction, il est important de ne pas sous-estimer le temps nécessaire à la reconstruction des index de texte intégral.

Dans tous les cas, après migration de la base, le niveau minimum de compatibilité est de 100, car c’est le niveau minimum supporté par SQL Server 2022.

Le fait de déplacer une base de données d’une instance à une autre va amener des modifications sur de nombreuses métadonnées et cela risque d’avoir des effets importants sur la bonne utilisation de la base. Par exemple, toutes les tâches planifiées qui participent à la bonne administration de la base sont stockées dans la base de données MSDB et le déplacement...