Skip to main content

Utiliser bcp pour importer et exporter des données à partir de SQL Server

[Named Pipes]SQL Server does not exist or access denied Fixed (Avril 2025)

[Named Pipes]SQL Server does not exist or access denied Fixed (Avril 2025)
Anonim

La commande de copie en bloc (bcp) de Microsoft SQL Server vous permet d'insérer un grand nombre d'enregistrements directement à partir de la ligne de commande. En plus d'être un outil utile pour les amateurs de ligne de commande, l'utilitaire bcp est un outil puissant pour ceux qui souhaitent insérer des données dans une base de données SQL Server à partir d'un fichier de commandes ou d'une autre méthode de programmation. Il existe de nombreuses façons d’obtenir des données dans une base de données, mais bcp est le plus rapide lorsque les paramètres appropriés sont configurés.

Syntaxe BCP

La syntaxe de base pour utiliser bcp est la suivante:

bcp

où les arguments prennent les valeurs suivantes:

  • Nom de la table est le nom complet de la table. Par exemple, vous pouvez utiliser stocks.dbo.fruits pour insérer des enregistrements dans la table fruits appartenant au propriétaire de la base de données dans la base de données d'inventaire.
  • Direction indique si vous souhaitez importer des données (direction “intérieure”) ou des données d'exportation (direction “extérieure”).
  • Nom de fichier est le chemin complet du fichier. Par exemple, vous pouvez importer le fichier C: fruit inventaire.txt.
  • Les options vous permettent de spécifier des paramètres pour l'opération en bloc. Par exemple, vous pouvez spécifier le nombre maximal d'erreurs autorisées avec l'option –m. Vous pouvez également utiliser l'option –x pour spécifier un format de fichier XML. Consultez la documentation de Microsoft bcp pour une liste complète.

Exemple d'importation BCP

En résumé, imaginez que votre base de données d'inventaire contienne une table de fruits et que vous souhaitez importer tous les enregistrements d'un fichier texte stocké sur votre disque dur dans cette base de données. Vous utiliseriez la syntaxe de commande bcp suivante:

bcp inventaire.dbo.fruits dans "C: fruit inventaire.txt" -c -T

Cela produit la sortie suivante:

C: > bcp inventaire.dbo.fruits dans "C: fruit inventaire.txt" -c -T

Copie de départ …

36 lignes copiées.

Taille de paquet du réseau (octets): 4096

Temps d'horloge (ms.) Total: 16 Moyenne: (2250.00 lignes par seconde)

C: >

Vous avez peut-être remarqué deux nouvelles options sur cette ligne de commande. L'option –c spécifie que le format de fichier du fichier d'importation sera un texte délimité par des tabulations avec chaque enregistrement sur une nouvelle ligne. L'option –T indique que bcp doit utiliser l'authentification Windows pour se connecter à la base de données.

Exemple d'exportation BCP

Vous pouvez exporter des données de votre base de données avec bcp en modifiant le sens de l'opération de "in" à "out". Par exemple, vous pouvez vider le contenu de la table de fruits dans un fichier texte à l'aide de la commande suivante:

bcp inventory.dbo.fruit "C: fruit inventaire.txt" -c -T

Voici à quoi cela ressemble sur la ligne de commande:

C: > bcp inventaire.dbo.fr accepte "C: fruit inventaire.txt" -c -T

Copie de départ …

42 lignes copiées.

Taille de paquet du réseau (octets): 4096

Temps d'horloge (ms.) Total: 1 Moyenne: (42000.00 lignes par seconde)

C: >

C’est tout ce qui concerne la commande bcp. Vous pouvez utiliser cette commande à partir de fichiers de commandes ou d'autres programmes ayant accès à la ligne de commande DOS pour automatiser l'importation et l'exportation de données à partir de votre base de données SQL Server.