Mengimpor data format asli dan karakter dari versi SQL Server sebelumnya
Berlaku untuk: SQL Server Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)
Pada SQL Server 2014 (12.x) dan yang lebih baru, Anda dapat menggunakan bcp untuk mengimpor data format asli dan karakter dari SQL Server 2000 (8,x), SQL Server 2005 (9,x), SQL Server 2008 (10.0.x), SQL Server 2008 R2 (10.50.x), atau SQL Server 2012 (11.x) dengan menggunakan -V Beralih. Sakelar -V menyebabkan SQL Server menggunakan jenis data dari versi SQL Server sebelumnya yang ditentukan, dan format file data sama dengan format dalam versi sebelumnya.
Untuk menentukan versi SQL Server sebelumnya untuk file data, gunakan sakelar -V dengan salah satu kualifikasi berikut:
Versi SQL Server | Pengualifikasi |
---|---|
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 |
Interpretasi Jenis Data
SQL Server 2005 (9.x) dan versi yang lebih baru memiliki dukungan untuk beberapa jenis baru. Saat Anda ingin mengimpor jenis data baru ke versi SQL Server sebelumnya, jenis data harus disimpan dalam format yang dapat dibaca oleh klien bcp yang lebih lama. Tabel berikut ini meringkas bagaimana jenis data baru dikonversi untuk kompatibilitas dengan versi SQL Server sebelumnya.
Jenis data baru di SQL Server 2005 | Jenis data yang kompatibel dalam versi 6x | Jenis data yang kompatibel di versi 70 | Jenis data yang kompatibel di versi 80 |
---|---|---|---|
bigint | desimal | desimal | * |
aql_variant | teks | nvarchar(4000) | * |
varchar(max) | teks | teks | teks |
nvarchar(maks) | ntext | ntext | ntext |
varbinary(max) | gambar | gambar | gambar |
XML | ntext | ntext | ntext |
UDT** | gambar | gambar | gambar |
*Jenis ini didukung secara asli.
**UDT menunjukkan jenis yang ditentukan pengguna.
Mengekspor menggunakan -V 80
Saat Anda mengekspor data secara massal dengan menggunakan sakelar -V80, data nvarchar(max), varchar(max), varbinary(max), XML, dan UDT dalam mode asli disimpan dengan awalan 4 byte, seperti data teks, gambar, dan ntext, daripada dengan prefiks 8-byte, yang merupakan default untuk SQL Server 2005 (9,x) dan versi yang lebih baru.
Menyalin Nilai Tanggal
bcp menggunakan API salinan massal ODBC. Oleh karena itu, untuk mengimpor nilai tanggal ke dalam SQL Server, bcp menggunakan format tanggal ODBC (yyyy-mm-dd hh:mm:ss[.f...]).
Perintah bcp mengekspor file data format karakter menggunakan format default ODBC untuk nilai tanggalwaktu dan smalldatetime . Misalnya, kolom tanggalwaktu yang berisi tanggal 12 Aug 1998
disalin secara massal ke file data sebagai string 1998-08-12 00:00:00.000
karakter .
Penting
Saat mengimpor data ke bidang smalldatetime menggunakan bcp, pastikan nilai untuk detik adalah 00.000; jika tidak, operasi akan gagal. Jenis data smalldatetime hanya menyimpan nilai ke menit terdekat. SISIPAN MASSAL dan SISIPKAN ... SELECT * FROM OPENROWSET(BULK...) tidak akan gagal dalam instans ini tetapi akan memotong nilai detik.
Tugas Terkait
Untuk menggunakan format data untuk impor massal atau ekspor massal
Gunakan Format Karakter untuk Mengimpor atau Mengekspor Data (SQL Server)
Menggunakan Format Asli untuk Mengimpor atau Mengekspor Data (SQL Server)
Gunakan Format Karakter Unicode untuk Mengimpor atau Mengekspor Data (SQL Server)
Menggunakan Unicode Native Format untuk Mengimpor atau Mengekspor Data (SQL Server)
Lihat juga
utilitas bcp
SISIPAN MASSAL (Transact-SQL)
OPENROWSET (Transact-SQL)
Tipe Data (Transact-SQL)
SQL Server Kompatibilitas Mundur Mesin Database
CAST dan CONVERT (Transact-SQL)
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk