Jenis Data dan Perilaku Pemuatan Massal XML (SQLXML 4.0)

Berlaku untuk:database SQL ServerAzure SQL

Jenis data yang ditentukan dalam skema pemetaan (jenis XSD atau XDR dan sql:datatype) umumnya diabaikan, kecuali dalam kasus berikut:

Dalam XSD:

  • Jika jenisnya adalah dateTime atau time, Anda harus menentukan sql:datatype karena XML Bulk Load melakukan konversi data sebelum mengirim data ke Microsoft SQL Server.

  • Ketika Anda memuat secara massal ke dalam kolom jenis pengidentifikasi unik di SQL Server dan nilai XSD adalah GUID yang menyertakan kurung kurawal ({ dan }), Anda harus menentukan sql:datatype="uniqueidentifier" untuk menghapus kurung kurawal sebelum nilai disisipkan ke dalam kolom. Jika sql:datatype tidak ditentukan, nilai dikirim dengan kurung kurawal dan sisipan gagal.

Untuk informasi selengkapnya tentang sql:datatype, lihat Koersi Tipe Data dan anotasi sql:datatype (SQLXML 4.0).

Dalam XDR:

  • Jika dt:type adalah jenis data datetime, time, dateTime.tz, atau time.tz, Anda harus menentukan jenis data dt:type dan sql:datatype karena XML Bulk Load melakukan konversi data sebelum mengirim data ke SQL Server.

  • Jika data XML Anda berjenis uuid, sql:datatype harus ditentukan; dt:type="uuid" juga diperlukan, kecuali datanya adalah data string. Jika Anda tidak menentukan dt:uuid, Beban Massal XML menerima string dengan kurung kurawal (dan menghapusnya jika diperlukan).

  • Jika data XML adalah bin.base64 atau bin.hex, Anda harus menentukan jenis data XML dengan dt:type. Muat Massal XML kemudian memuat data ke dalam SQL Server sebagai representasi heksadesimal data.