Bagikan melalui


BASE64_ENCODE (T-SQL)

Berlaku untuk: Titik akhir analitik azure SQL Database SQL dan Gudang di Microsoft Fabric

BASE64_ENCODE mengonversi nilai varbinary menjadi varchar yang dikodekan base64.

Konvensi sintaks transact-SQL

Sintaks

BASE64_ENCODE (expression [, url_safe])

Argumen

expression

Ekspresi jenis varbinary (n | maks)

url_safe

Literal atau ekspresi bilangan bulat opsional, yang menentukan apakah output operasi pengodean harus aman untuk URL. Angka apa pun selain 0 mengevaluasi ke true. Nilai defaultnya adalah 0.

Jenis yang dikembalikan

  • Varchar(8000)
  • Varchar(max) jika input adalah varbinary(max)
  • Varchar(max) jika input adalah varchar(n) di mana n > 6000
  • Jika ekspresi input adalah null, outputnya adalah null.

Keterangan

Alfabet string yang dikodekan adalah dari RFC 4648 Table 1 dan dapat menambahkan padding. Output url-safe menggunakan alfabet base64url dari RFC 4648 Table 2 dan tidak menambahkan padding. Fungsi ini tidak menambahkan karakter baris baru.

Dalam setiap kasus, kolatasi default database digunakan. Untuk informasi selengkapnya tentang kolatasi yang didukung di Microsoft Fabric, lihat Tabel.

Jika url_safe benar, string base64url yang dihasilkan tidak kompatibel dengan dekoder XML dan JSON base64 SQL Server.

Contoh

J. BASE64_ENCODE standar

Dalam contoh berikut, varbinary sederhana dikodekan base64.

SELECT Base64_Encode(0xA9) as "Encoded © symbol";

Berikut adalah hasil yang ditetapkan.

------------  
qQ==
(1 row affected)

B. BASE64_ENCODE string

Dalam contoh berikut, string dikodekan base64. String harus terlebih dahulu ditransmisikan ke varbinary.

SELECT BASE64_ENCODE (CAST ('hello world' as varbinary))

Berikut adalah hasil yang ditetapkan.

------------  
aGVsbG8gd29ybGQ=
(1 row affected)

C. BASE64_ENCODE default vs url_safe

Dalam contoh berikut, pilihan pertama tidak menentukan url_safe, namun pilihan kedua menentukan url_safe.

SELECT BASE64_ENCODE(0xCAFECAFE)

Berikut adalah hasil yang ditetapkan.

------------  
yv7K/g==
(1 row affected)

Contoh berikut menentukan bahwa output aman untuk URL.

SELECT BASE64_ENCODE(0xCAFECAFE, 1);

Berikut adalah hasil yang ditetapkan.

------------  
yv7K_g
(1 row affected)

Langkah berikutnya