Skip to main content

Verwenden von bcp zum Importieren und Exportieren von Daten aus SQL Server

Beginners MS Access Database Tutorial 1 - Introduction and Creating Database (Kann 2024)

Beginners MS Access Database Tutorial 1 - Introduction and Creating Database (Kann 2024)
Anonim

Mit dem Massenkopierbefehl (bcp) von Microsoft SQL Server können Sie eine große Anzahl von Datensätzen direkt über die Befehlszeile einfügen. Das Hilfsprogramm bcp ist nicht nur ein nützliches Werkzeug für Befehlszeilenanhänger, sondern auch ein leistungsfähiges Werkzeug für alle, die Daten aus einer Batchdatei oder einer anderen programmatischen Methode in eine SQL Server-Datenbank einfügen möchten. Es gibt viele Möglichkeiten, Daten in eine Datenbank zu übernehmen, aber bcp ist die schnellste, wenn sie mit den richtigen Parametern eingerichtet wird.

BCP-Syntax

Die grundlegende Syntax für die Verwendung von bcp lautet:

bcp

wo die Argumente die folgenden Werte annehmen:

  • Tabellenname ist der vollständig qualifizierte Name der Tabelle. Beispielsweise könnten Sie inventory.dbo.fruits verwenden, um Datensätze in die Früchte-Tabelle einzufügen, deren Eigentümer der Datenbankbesitzer in der Inventardatenbank ist.
  • Richtung Gibt an, ob Sie Daten importieren (Richtung "in") oder exportieren möchten (Richtung "aus").
  • Dateiname ist der vollständige Pfad zur Datei. Sie können beispielsweise die Datei C: fruit inventory.txt importieren.
  • Optionen Damit können Sie Parameter für den Massenvorgang angeben. Sie können beispielsweise die maximale Anzahl von Fehlern angeben, die mit der Option –m zulässig sind. Sie können auch die Option –x verwenden, um ein XML-Dateiformat anzugeben. Eine vollständige Liste finden Sie in der bcp-Dokumentation von Microsoft.

BCP-Importbeispiel

Stellen Sie sich vor, Sie haben eine Obst-Tabelle in Ihrer Inventardatenbank und möchten alle Datensätze aus einer auf Ihrer Festplatte gespeicherten Textdatei in diese Datenbank importieren. Sie würden die folgende Bcp-Befehlssyntax verwenden:

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

Dies erzeugt die folgende Ausgabe:

C: > bcp inventory.dbo.fruits in "C: fruit inventory.txt" -c -T

Kopie wird gestartet …

36 kopierte Zeilen.

Netzwerkpaketgröße (Bytes): 4096

Uhrzeit (ms) Gesamt: 16 Durchschnitt: (2250.00 Zeilen pro Sekunde)

C: >

Möglicherweise haben Sie in dieser Befehlszeile zwei neue Optionen gefunden. Die Option –c gibt an, dass das Dateiformat der Importdatei Text mit Tabulatortrennzeichen ist, wobei sich jeder Datensatz in einer neuen Zeile befindet. Die Option –T gibt an, dass bcp die Windows-Authentifizierung für die Verbindung zur Datenbank verwenden soll.

BCP-Exportbeispiel

Sie können mit bcp Daten aus Ihrer Datenbank exportieren, indem Sie die Richtung der Operation von "in" nach "out" ändern. Zum Beispiel können Sie den Inhalt der Früchtetabelle mit dem folgenden Befehl in eine Textdatei speichern

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

So sieht das in der Kommandozeile aus:

C: > bcp inventory.dbo.ffragt "C: fruit inventory.txt" -c -T aus

Kopie wird gestartet …

42 Zeilen kopiert.

Netzwerkpaketgröße (Bytes): 4096

Uhrzeit (ms) Gesamt: 1 Durchschnitt: (42000.00 Zeilen pro Sekunde)

C: >

Das ist alles für den Befehl bcp. Sie können diesen Befehl innerhalb von Batchdateien oder anderen Programmen mit Zugriff auf die DOS-Befehlszeile verwenden, um den Import und Export von Daten aus Ihrer SQL Server-Datenbank zu automatisieren.