Bagikan melalui


Menggunakan file format Non-XML (SQL Server)

Berlaku untuk: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Di SQL Server, dua jenis file format didukung untuk ekspor dan impor massal: file format non-XML dan file format XML.

Manfaat file format non-XML

  • Anda dapat membuat file format non-XML secara otomatis dengan menentukan opsi format dalam perintah bcp .

  • Saat Anda menentukan file format yang ada dalam perintah bcp , perintah menggunakan nilai yang direkam dalam file format dan tidak meminta Anda untuk jenis penyimpanan file, panjang awalan, panjang bidang, atau terminator bidang.

  • Anda dapat membuat file format untuk jenis data tertentu seperti data karakter atau data asli.

  • Anda dapat membuat file format non-XML yang berisi atribut yang ditentukan secara interaktif untuk setiap bidang data. Untuk informasi selengkapnya, lihat Menentukan Format Data untuk Kompatibilitas saat Menggunakan bcp (SQL Server).

Catatan

File format XML menawarkan beberapa keuntungan daripada file format non-XML. Untuk informasi selengkapnya, lihat File Format XML (SQL Server).

Catatan

Sintaks ini, termasuk sisipan massal, tidak didukung di Azure Synapse Analytics. Di Azure Synapse Analytics dan integrasi platform database cloud lainnya, selesaikan pergerakan data melalui pernyataan COPY di Azure Data Factory, atau dengan menggunakan pernyataan T-SQL seperti COPY INTO dan PolyBase.

Struktur File Format Non-XML

File format non-XML adalah file teks yang memiliki struktur tertentu. File format non-XML berisi informasi tentang jenis penyimpanan file, panjang awalan, panjang bidang, dan terminator bidang dari setiap kolom tabel.

Ilustrasi berikut mengilustrasikan bidang format-file untuk sampel file format non-XML.

Mengidentifikasi bidang file format non-xml.

Bidang Versi dan Jumlah kolom hanya terjadi satu kali. Maknanya dijelaskan dalam tabel berikut.

Bidang format-file Deskripsi
Versi Nomor versi utilitas bcp :

9.0 = SQL Server 2005 (9.x)

10.0 = SQL Server 2008 (10.0.x)

11.0 = SQL Server 2012 (11.x)

12.0 = SQL Server 2014 (12.x)

Nomor versi hanya dikenali oleh bcp, bukan oleh Transact-SQL.



Catatan: Versi utilitas bcp (Bcp.exe) yang digunakan untuk membaca file format harus sama dengan, atau versi yang lebih baru dari yang digunakan untuk membuat file format. Misalnya, SQL Server 2012 (11.x)bcp dapat membaca file format versi 10.0, yang dihasilkan oleh SQL Server 2008 (10.0.x)bcp, tetapi SQL Server 2008 (10.0.x)bcp tidak dapat membaca file format versi 12.0, yang dihasilkan oleh SQL Server 2014 (12.x)bcp.
Jumlah kolom Jumlah bidang dalam file data. Angka ini harus sama di semua baris.

Bidang format-file lainnya menjelaskan bidang data yang akan diimpor atau diekspor secara massal. Setiap bidang data memerlukan baris terpisah dalam file format. Setiap baris format-file berisi nilai untuk bidang format-file yang dijelaskan dalam tabel berikut.

Bidang format-file Deskripsi
Urutan bidang file host Angka yang menunjukkan posisi setiap bidang dalam file data. Bidang pertama dalam baris adalah 1, dan sebagainya.
Jenis data file host Menunjukkan jenis data yang disimpan di bidang tertentu dari file data. Dengan file data ASCII, gunakan SQLCHAR; untuk file data format asli, gunakan jenis data default. Untuk informasi selengkapnya, lihat Menentukan Jenis Penyimpanan File dengan Menggunakan bcp (SQL Server).
Panjang awalan Jumlah karakter awalan panjang untuk bidang . Panjang awalan yang valid adalah 0, 1, 2, 4, dan 8. Untuk menghindari menentukan awalan panjang, atur ini ke 0. Awalan panjang harus ditentukan jika bidang berisi nilai data NULL. Untuk informasi selengkapnya, lihat Menentukan Panjang Awalan dalam File Data dengan Menggunakan bcp (SQL Server).
Panjang data file host Panjang maksimum, dalam byte, dari jenis data yang disimpan di bidang tertentu dari file data.

Jika Anda membuat file format non-XML untuk file teks yang dibatasi, Anda dapat menentukan 0 untuk panjang data file host dari setiap bidang data. Ketika file teks yang dibatasi memiliki panjang awalan 0 dan terminator diimpor, nilai panjang bidang diabaikan, karena ruang penyimpanan yang digunakan oleh bidang sama dengan panjang data ditambah terminator.

Untuk informasi selengkapnya, lihat Menentukan Panjang Bidang dengan Menggunakan bcp (SQL Server).
Terminator Pemisah untuk memisahkan bidang dalam file data. Terminator umum adalah koma (,), tab (\t), dan akhir baris (\r\n). Untuk informasi selengkapnya, lihat Menentukan Terminator Bidang dan Baris (SQL Server).
Urutan kolom server Urutan kolom yang muncul di tabel SQL Server. Misalnya, jika bidang keempat dalam file data dipetakan ke kolom keenam dalam tabel SQL Server, urutan kolom server untuk bidang keempat adalah 6.

Untuk mencegah kolom dalam tabel menerima data apa pun dari file data, atur nilai urutan kolom server ke 0.
Nama kolom server Nama kolom yang disalin dari tabel SQL Server. Nama aktual bidang tidak diperlukan, tetapi bidang dalam file format tidak boleh kosong.
Kolatasi kolom Kolater yang digunakan untuk menyimpan karakter dan data Unicode dalam file data.

Catatan

Anda dapat mengubah file format untuk memungkinkan Anda mengimpor secara massal dari file data di mana jumlah atau urutan bidang berbeda dari jumlah atau urutan kolom tabel. Untuk informasi selengkapnya, lihat daftar Tugas Terkait.

Contoh file format non-XML

Contoh berikut menunjukkan file format non-XML yang dibuat sebelumnya (myDepartmentIdentical-f-c.fmt). File ini menjelaskan bidang data karakter untuk setiap kolom dalam HumanResources.Department tabel dalam AdventureWorks2022 database sampel.

File format yang dihasilkan, myDepartmentIdentical-f-c.fmt, berisi informasi berikut:

12.0  
4  
1       SQLCHAR       0       7       "\t"     1     DepartmentID     ""  
2       SQLCHAR       0       100     "\t"     2     Name             SQL_Latin1_General_CP1_CI_AS  
3       SQLCHAR       0       100     "\t"     3     GroupName        SQL_Latin1_General_CP1_CI_AS  
4       SQLCHAR       0       24      "\r\n"   4     ModifiedDate     ""

Catatan

Untuk ilustrasi yang memperlihatkan bidang format-file sehubungan dengan contoh file format non-XML ini, lihat Struktur File Format Non-XML.

Tugas terkait

Langkah berikutnya