Vous êtes sur la page 1sur 5

L’utilitaire bcp

L’utilitaire bulk copy program (bcp) copie en bloc des données entre une instance
de Microsoft SQL Server et un fichier de données dans un format spécifié par
l’utilisateur. L’utilitaire bcp permet d’importer un grand nombre de nouvelles
lignes dans des tables SQL Server ou d’exporter des données de tables dans des
fichiers de données. L’utilitaire ne nécessite aucune connaissance de Transact-
SQL. Si vous utilisez bcp pour sauvegarder vos données, créez un fichier de
format pour enregistrer le format de données. Les fichiers de données bcp
n’incluent pas de schéma ni d’informations de format, ce qui fait que si une table
ou une vue est supprimée et si vous n’avez pas de fichier de format, il se peut que
vous ne soyez pas en mesure d’importer les données. Le téléchargement de
l’utilitaire se fait sur le site officiel de Microsoft.

Une fois l’utilitaire installé, nous pouvons commencer l’importation et


l’exportation de nos données.

La syntaxe de base d’une commande utilisant bcp se présente comme suit

data_file représente le chemin d'accès complet du fichier de données. Lors de


l'importation en bloc de données vers SQL Server, le fichier de données contient
les données à copier dans la table ou vue spécifiée. Lors de l'exportation en bloc
de données à partir de SQL Server, le fichier de données contient les données
provenant de la table ou vue.

Parmi les options de direction de la copie en bloc nous distinguons :

• in qui copie à partir d’un fichier dans une table ou une vue de la base de
données.
• out qui copie dans un fichier à partir d’une table ou d’une vue de la base de
données. Si vous spécifiez un fichier existant, il est remplacé. Lors de
l’extraction des données, l’utilitaire bcp représente une chaîne vide comme
une chaîne Null, et une chaîne Null comme une chaîne vide.
• queryout qui copie à partir d’une requête et doit être spécifié uniquement
lors d’une copie de données en bloc à partir d’une requête.
• format qui crée un fichier de format basé sur l’option spécifiée ( -n, -c, -
wou -N) et les délimiteurs de table ou de vue.

Cas pratique
Dans ce cas pratique nous exporterons les données de la table étudiant créée lors
de notre cours de SQL SERVER dans un fichier de données. Ensuite nous
créerons une table étudiant temporaire dans la base de données tempdb afin d’y
importer les données exportées précédemment.

Ouvrons notre terminal et saisissons la commande magique permettant d’exporter


les informations
Dans un langage compréhensible par l’Homme, cette commande signifie crée un
fichier de données nommé etudiantOut et copie les y données de la table étudiant
au format caractère. L’extension par défaut d’un fichier de données est .bcp.

Visualisons le contenu de ce fichier

Tout est ok. A présent créons une autre table étudiant dans la base de données
tempdb
Vérifions le contenu de notre table

Comme vous pouvez le constater notre table est encore vierge, nous allons
remédier à cela. À l’aide du fichier etudiantOut.bcp précédemment exporté,
importons ses données dans notre table nouvellement créée

Et comme par magie notre table est remplie


Cela démontre toute la puissance de l’outil bcp.

Vous aimerez peut-être aussi