Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL-Datenbank
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
In SQL Server 2014 (12.x) und höher können Siebcp verwenden, um systemeigene und Zeichenformatdaten aus SQL Server 2000 (8.x), SQL Server 2005 (9.x), SQL Server 2008 (10.0.x), SQL Server 2008 R2 (10.50.x) oder SQL Server 2012 (11.x) mithilfe der Option -V zu importieren. Der Schalter -V veranlasst SQL Server, Datentypen aus der angegebenen früheren Version von SQL Server zu verwenden. Zudem entspricht das Datendateiformat dem Format dieser früheren Version.
Um eine frühere Version von SQL Server für eine Datendatei anzugeben, verwenden Sie den Schalter -V mit einem der folgenden Qualifizierer:
| SQL Server-Version | Qualifizierer |
|---|---|
| SQL Server 2000 (8,x) | -V80 |
| SQL Server 2005 (9,x) | -V90 |
| SQL Server 2008 (10.0.x) | -V100 |
| SQL Server 2012 (11.x) | -V 110 |
Interpretation von Datentypen
SQL Server 2005 (9.x) und höhere Versionen bieten Unterstützung für einige neue Typen. Beim Importieren eines neuen Datentyps aus einer früheren Version von SQL Server, muss der Dateityp in einem Format gespeichert sein, das von den älteren bcp-Clients gelesen werden kann. In der folgenden Tabelle finden Sie eine Übersicht, wie die neuen Datentypen konvertiert werden, damit sie mit den früheren Versionen von SQL Server kompatibel sind.
| Neue Datentypen in SQL Server 2005 | Kompatible Datentypen in Version 6x | Kompatible Datentypen in Version 70 | Kompatible Datentypen in Version 80 |
|---|---|---|---|
| bigint | Dezimalzahl | Dezimalzahl | * |
| sql_variant | text | nvarchar(4000) | * |
| varchar(max) | text | text | text |
| nvarchar(max) | ntext | ntext | ntext |
| varbinary(max) | Abbildung | Abbildung | Abbildung |
| XML | ntext | ntext | ntext |
| UDT** | Abbildung | Abbildung | Abbildung |
*Dieser Typ wird nativ unterstützt.
**UDT gibt einen benutzerdefinierten Typ an.
Exportieren mit -V 80
Wenn Sie Daten mithilfe des Schalters -V80 per Massenexport exportieren, werden Daten vom Typ nvarchar(max), varchar(max), varbinary(max), XML und UDT im nativen Modus wie Daten vom Typ text, image und ntext mit einem 4-Byte-Präfix gespeichert und nicht mit einem 8-Byte-Präfix, das für SQL Server 2005 (9.x) und spätere Versionen der Standard ist.
Kopieren von Datumswerten
bcp verwendet die ODBC-Massenkopier-API. Deshalb verwendet bcp zum Importieren von Datumswerten in SQL Server das ODBC-Datumsformat (jjjj-mm-tthh:mm:ss[.f...]).
Der Befehl bcp exportiert Datendateien im Zeichenformat unter Verwendung des ODBC-Standardformats für datetime- und smalldatetime-Werte. So wird beispielsweise eine datetime -Spalte mit dem Datum 12 Aug 1998 beim Massenkopieren in eine Datendatei als Zeichenfolge 1998-08-12 00:00:00.000übertragen.
Wichtig
Achten Sie beim Importieren von Daten mit bcp in ein smalldatetime-Feld darauf, dass der Wert für Sekunden 00.000 ist; andernfalls ruft der Vorgang einen Fehler hervor. Der smalldatetime-Datentyp speichert nur minutengenaue Werte. BULK INSERT und INSERT ... SELECT * FROM OPENROWSET(BULK...) schlägt in dieser Instanz nicht fehl, schneidet jedoch den Sekundenwert ab.
Verwandte Aufgaben
So verwenden Sie Datenformate für Massenimport oder Massenexport
Verwenden des Zeichenformats zum Importieren oder Exportieren von Daten (SQL Server)
Verwenden des nativen Formats zum Importieren oder Exportieren von Daten (SQL Server)
Verwenden des Unicode-Zeichenformats zum Importieren und Exportieren von Daten (SQL Server)
Verwenden des systemeigenen Unicode-Formats zum Importieren oder Exportieren von Daten (SQL Server)
Siehe auch
bcp-Dienstprogramm
BULK INSERT (Transact-SQL)
OPENROWSET (Transact-SQL)
Datentypen (Transact-SQL)
Abwärtskompatibilität der SQL Server-Datenbank-Engine
CAST und CONVERT (Transact-SQL)