Freigeben über


Vorbereiten von Daten für den Massenexport oder -import

Aktualisiert: 15. September 2007

In diesem Abschnitt werden Überlegungen, die beim Planen für Massenexportvorgänge relevant sind, sowie die Anforderungen für Massenimportvorgänge erläutert.

ms188609.note(de-de,SQL.90).gifHinweis:
Falls Sie sich in Bezug auf das Formatieren einer Datendatei für den Massenimport nicht sicher sind, können Sie das Dienstprogramm bcp verwenden, um Daten aus der Tabelle in eine Datendatei zu exportieren. Die Formatierung jedes Datenfelds in dieser Datei weist die Formatierung auf, die für den Massenimport von Daten in die entsprechende Tabellenspalte erforderlich ist. Verwenden Sie dieselbe Datenformatierung für die Felder Ihrer Datendatei.

Überlegungen zum Datendateiformat für den Massenexport

Bevor Sie mithilfe des Befehls bcp einen Massenexportvorgang ausführen, sollten Sie Folgendes berücksichtigen:

  • Wenn Daten in eine Datei exportiert werden, erstellt der Befehl bcp die Datendatei automatisch mithilfe des angegebenen Dateinamens. Wenn dieser Dateinamen bereits verwendet wird, überschreiben die Daten, die in die Datendatei massenkopiert werden, den vorhandenen Inhalt der Datei.
  • Zum Massenexportieren aus einer Tabelle oder Sicht in eine Datendatei ist die SELECT-Berechtigung für die massenkopierte Tabelle oder Sicht erforderlich.
  • Microsoft SQL Server kann parallele Scans verwenden, um Daten abzurufen. Daher ist normalerweise nicht sichergestellt, dass die Tabellenzeilen, die aus einer Instanz von SQL Server massenexportiert werden, sich in der Datendatei in einer bestimmten Reihenfolge befinden. Verwenden Sie die Option queryout für den Massenexport aus einer Abfrage, um sicherzustellen, dass massenexportierte Tabellenzeilen in der Datendatei in einer bestimmten Reihenfolge angezeigt werden, und geben Sie eine ORDER BY-Klausel an. Weitere Informationen finden Sie unter Exportieren von Daten aus einer Abfrage in eine Datendatei.

Anforderungen an das Datendateiformat für den Massenexport

Zum Importieren von Daten in eine Datendatei muss die Datei die folgenden grundlegenden Anforderungen erfüllen:

  • Die Datei muss ein Zeilen- und Spaltenformat aufweisen.
ms188609.note(de-de,SQL.90).gifHinweis:
Die Struktur der Datendatei muss nicht mit der Struktur der SQL Server-Tabelle übereinstimmen, da Spalten während des Massenimportprozesses ausgelassen oder neu geordnet werden können.
  • Die Daten in der Datendatei müssen ein unterstütztes Format aufweisen, z. B. ein Zeichen- oder systemeigenes Format.
  • Die Daten können ein Zeichenformat oder ein systemeigenes binäres Format, einschließlich Unicode, aufweisen.
  • Zum Importieren von Daten mithilfe des Befehls bcp, einer BULK INSERT-Anweisung oder einer INSERT ... SELECT * FROM OPENROWSET(BULK...)-Anweisung muss die Zieltabelle bereits vorhanden sein.
  • Jedes Feld in der Datendatei muss mit der entsprechenden Spalte in der Zieltabelle kompatibel sein. Ein int-Feld kann z. B. nicht in eine datetime-Spalte geladen werden. Weitere Informationen finden Sie unter Verwenden von systemeigenen Formaten, Zeichen- oder Unicode-Formaten und Angeben von Datenformaten für die Kompatibilität mithilfe von bcp.
    ms188609.note(de-de,SQL.90).gifHinweis:
    Sie können den Befehl bcp mit dem Schalter -Ffirst_row und/oder dem Schalter -Llast_row verwenden, um anstelle der gesamten Datei eine Teilmenge von Zeilen anzugeben, die aus einer Datendatei importiert werden sollen. Weitere Informationen finden Sie unter bcp (Dienstprogramm).
  • Zum Importieren von Daten aus Datendateien mit Feldern fester Länge oder Breite müssen Sie eine Formatdatei verwenden. Weitere Informationen finden Sie unter Beispiele für XML-Formatdateien.
  • In manchen Fällen kann eine Datei im CSV-Format (Comma-Separated Values) als Datendatei für einen Massenimport von Daten in SQL Server verwendet werden. Beachten Sie, dass das Feldabschlusszeichen einer CSV-Datei kein Komma sein muss. Damit eine CSV-Datei für den Massenimport als Datendatei verwendet werden kann, muss diese mit den folgenden Einschränkungen im Einklang stehen:
    • Datenfelder enthalten nie das Feldabschlusszeichen.
    • Es sind entweder keine oder alle Werte in einem Datenfeld in Anführungszeichen ("") eingeschlossen.
      Sollen Daten aus einer Microsoft FoxPro- oder Visual FoxPro-Tabellendatei (.dbf) oder einer Microsoft Excel-Arbeitsblattdatei (.xls) importiert werden, müssen diese Daten in eine CSV-Datei konvertiert werden, deren Dateierweiterung in der Regel .csv lautet. Anschließend kann die CSV-Datei als Datendatei in einem SQL Server-Massenimportvorgang verwendet werden.

Darüber hinaus ist Folgendes für den Massenimport von Daten aus einer Datendatei in eine Tabelle erforderlich:

  • Benutzer müssen über INSERT- und SELECT-Berechtigungen für die Tabelle verfügen. Benutzer müssen auch über eine ALTER TABLE-Berechtigung verfügen, wenn sie Optionen wie das Deaktivieren von Einschränkungen verwenden, für die DLL-Vorgänge (Data Definition Language) erforderlich sind.
  • Wenn Sie für das Massenimportieren von Daten BULK INSERT oder INSERT ... SELECT * FROM OPENROWSET(BULK...) verwenden, muss entweder das Sicherheitsprofil des SQL Server-Prozesses (wenn sich der Benutzer mit dem bereitgestellten SQL Server-Anmeldenamen anmeldet) oder die Microsoft Windows-Anmeldung, die beim Delegieren der Sicherheit verwendet wird, über Zugriff für Lesevorgänge auf die Datendatei verfügen. Darüber hinaus muss der Benutzer zum Lesen der Datei über die ADMINISTER BULK OPERATIONS-Berechtigung verfügen.
ms188609.note(de-de,SQL.90).gifHinweis:
Das Massenimportieren in eine partitionierte Sicht wird nicht unterstützt, und Versuche, einen Massenimport von Daten in eine partitionierte Sicht auszuführen, schlagen fehl.

Siehe auch

Konzepte

Verwenden des Zeichenformats zum Importieren und Exportieren von Daten
Verwenden des systemeigenen Formats zum Importieren oder Exportieren von Daten
Grundlegendes zu XML-Formatdateien

Andere Ressourcen

bcp (Dienstprogramm)
BULK INSERT (Transact-SQL)
Datentypen (Transact-SQL)
ExportData Method
ImportData Method

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

15. September 2007

Geänderter Inhalt:
  • Weitere Erläuterungen zur Vorbereitung einer CSV-Datei für den Massenimport wurden hinzugefügt.

17. Juli 2006

Neuer Inhalt:
  • Der Einführung wurde ein Hinweis hinzugefügt.
  • Eine Anforderung für das Importieren von Feldern fester Länge oder Breite wurde hinzugefügt.

14. April 2006

Neuer Inhalt:
  • Informationen zum Format von Datendateien beim Importieren von Daten aus Quellen außerhalb von SQL Server wurden hinzugefügt.