Kategorien:

Zeichenfolgen- und Binärfunktionen (Verschlüsseln/Entschlüsseln)

TRY_HEX_DECODE_STRING

Eine spezielle Version von HEX_DECODE_STRING, die einen NULL-Wert zurückgibt, wenn während der Dekodierung ein Fehler auftritt.

Syntax

TRY_HEX_DECODE_STRING(<input>)
Copy

Argumente

input

Ein hexadezimal-codierter Zeichenfolgenausdruck. Normalerweise wurde die Eingabe durch einen Aufruf von HEX_ENCODE erstellt.

Rückgabewerte

Der zurückgegebene Wert ist eine Zeichenfolge (VARCHAR).

Beispiele

Hier sehen Sie, wie sich die Funktion verwenden lässt:

Erstellen Sie eine Tabelle und Daten:

CREATE TABLE hex (v VARCHAR, hex_string VARCHAR, garbage VARCHAR);
INSERT INTO hex (v, hex_string, garbage) 
  SELECT 'AaBb', HEX_ENCODE('AaBb'), '127';
Copy

Führen Sie nun die Abfrage aus:

SELECT v, hex_string, TRY_HEX_DECODE_STRING(hex_string), TRY_HEX_DECODE_STRING(garbage) FROM hex;
Copy

Ausgabe:

+------+------------+-----------------------------------+--------------------------------+
| V    | HEX_STRING | TRY_HEX_DECODE_STRING(HEX_STRING) | TRY_HEX_DECODE_STRING(GARBAGE) |
|------+------------+-----------------------------------+--------------------------------|
| AaBb | 41614262   | AaBb                              | NULL                           |
+------+------------+-----------------------------------+--------------------------------+
Copy