Share via


Vorgehensweise: Erstellen einer Formatdatei für das Massenkopieren (ODBC)

In einem vollständigen Beispiel wird gezeigt, wie mit Funktionen zum Massenkopieren sowohl eine Datendatei als auch eine Formatdatei erstellt werden können. Der vollständige Beispielcode ist in der Datei BulkCopyWithFormat.cpp verfügbar, die Sie von der Seite SQL Server Downloads auf MSDN herunterladen können. Dieses Beispiel wurde mit Microsoft Visual C++ 2005 entwickelt und für ODBC Version 3.0 oder höher konzipiert.

SicherheitshinweisSicherheitshinweis

Verwenden Sie nach Möglichkeit die Windows-Authentifizierung. Wenn die Windows-Authentifizierung nicht verfügbar ist, fordern Sie Benutzer auf, ihre Anmeldeinformationen zur Laufzeit einzugeben. Die Anmeldeinformationen sollten nicht in einer Datei gespeichert werden. Wenn Sie die Anmeldeinformationen speichern müssen, sollten Sie sie mit der Win32 Crypto-API verschlüsseln.

So erstellen Sie eine Formatdatei für das Massenkopieren

  1. Weisen Sie ein Umgebungshandle und ein Verbindungshandle zu.

  2. Legen Sie SQL_COPT_SS_BCP und SQL_BCP_ON fest, um Massenkopiervorgänge zu aktivieren.

  3. Stellen Sie eine Verbindung mit SQL Server her.

  4. Rufen Sie bcp_init auf, um die folgenden Informationen festzulegen:

    • Name der Tabelle oder Sicht, aus der bzw. in die massenkopiert werden soll

    • Name der Datendatei, die die in die Datenbank zu kopierenden Daten enthält bzw. in die die Daten eingefügt werden sollen, die aus der Datenbank kopiert werden

    • Name der Datendatei, in die Fehlermeldungen zum Massenkopiervorgang ausgegeben werden sollen (geben Sie NULL an, wenn keine Meldungsdatei erstellt werden soll)

    • Kopierrichtung: DB_OUT, wenn Daten aus der Tabelle oder Sicht in die Datei kopiert werden sollen

  5. Rufen Sie bcp_columns auf, um die Anzahl der Spalten festzulegen.

  6. Rufen Sie bcp_colfmt für jede Spalte auf, um deren Eigenschaften in der Datendatei zu definieren.

  7. Rufen Sie bcp_writefmt auf, um eine Formatdatei zu erstellen, die die durch den Massenkopiervorgang zu erstellende Datendatei beschreibt.

  8. Rufen Sie bcp_exec auf, um den Massenkopiervorgang auszuführen.

Mit einem auf diese Weise ausgeführten Massenkopiervorgang werden sowohl eine Datendatei, die die massenkopierten Daten enthält, als auch eine Formatdatei erstellt, die das Layout der Datendatei beschreibt, erstellt.