Freigeben über


BASE64_ENCODE (Transact-SQL)

Gilt für: Azure SQL-Datenbank SQL-Analyseendpunkt und Warehouse in Microsoft Fabric

BASE64_ENCODE konvertiert den Wert eines varbinary-Datentyps in einen Base64-codierten varchar-Datentyp.

Transact-SQL-Syntaxkonventionen

Syntax

BASE64_ENCODE (expression [, url_safe])

Argumente

expression

Ein Ausdruck vom Typ varbinary (n | max)

url_safe

Optionaler ganzzahliger Literal oder Ausdruck, der angibt, ob die Ausgabe des Codierungsvorgangs URL-sicher sein soll. Jede andere Zahl als 0 wird als TRUE ausgewertet. Standardwert: 0.

Rückgabetypen

  • Varchar(8000)
  • Varchar(max), wenn die Eingabe dem Datentyp varbinary(max) entspricht
  • Varchar(max), wenn die Eingabe varchar(n) entspricht, wobei n > 6000 ist
  • Wenn der Eingabeausdruck null ist, ist die Ausgabe null.

Bemerkungen

Das codierte Zeichenfolgenalphabet entspricht dem von RFC 4648-Tabelle 1 und kann aufgefüllt werden. Die URL-sichere Ausgabe verwendet das Base64url-Alphabet von RFC 4648-Tabelle 2 und fügt keine Auffüllung hinzu. Diese Funktion fügt keine Zeilenvorschubzeichen hinzu.

In jedem Fall wird die Standardsortierung der Datenbank verwendet. Weitere Informationen zu den unterstützten Sortierungen in Microsoft Fabric finden Sie unter Tabellen.

Wenn url_safe TRUE ist, ist die generierte Base64url-Zeichenfolge nicht mit den XML- und JSON-Base64-Decodern von SQL Server kompatibel.

Beispiele

A. Standard-BASE64_ENCODE

Im folgenden Beispiel wird der einfache varbinary-Datentyp Base64-codiert.

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

Hier ist das Resultset.

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

B. BASE64_ENCODE für eine Zeichenfolge

Im folgenden Beispiel wird eine Zeichenfolge Base64-codiert. Die Zeichenfolge muss zuerst in den Datentyp varbinary umgewandelt werden.

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

Hier ist das Resultset.

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

C. BASE64_ENCODE: Standard im Vergleich zu url_safe

Im folgenden Beispiel wird url_safe in der ersten SELECT-Anweisung nicht angegeben. Die zweite SELECT-Anweisung hingegeben gibt url_safe an.

SELECT BASE64_ENCODE(0xCAFECAFE)

Hier ist das Resultset.

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

Im folgenden Beispiel wird angegeben, dass die Ausgabe URL-sicher ist.

SELECT BASE64_ENCODE(0xCAFECAFE, 1);

Hier ist das Resultset.

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

Nächste Schritte