- Catégories :
Fonctions de chaîne et fonctions binaires (Encodage/Décodage)
TRY_HEX_DECODE_BINARY¶
Une version spéciale de HEX_DECODE_BINARY qui renvoie une valeur NULL si une erreur se produit pendant le décodage.
Syntaxe¶
TRY_HEX_DECODE_BINARY(<input>)
Arguments¶
input
Une expression de chaîne contenant uniquement des chiffres hexadécimaux. En règle générale, cette chaîne d’entrée est générée en appelant la fonction HEX_ENCODE.
Renvoie¶
Une valeur BINARY
pouvant, par exemple, être insérée dans une colonne de type BINARY
.
Exemples¶
Ceci montre comment utiliser la fonction TRY_HEX_DECODE_BINARY
(notez que la fonction est utilisée dans l’instruction INSERT
pour décoder en un champ BINARY ; la fonction n’est pas utilisée dans l’instruction SELECT
) :
Créez une table et des données :
CREATE TABLE hex (v VARCHAR, b BINARY); INSERT INTO hex (v, b) SELECT 'ABab', -- Convert string -> hex-encoded string -> binary. TRY_HEX_DECODE_BINARY(HEX_ENCODE('ABab'));Maintenant, exécutez une requête pour montrer que nous pouvons récupérer les données intactes :
SELECT v, b, -- Convert binary -> hex-encoded-string -> string. TRY_HEX_DECODE_STRING(TO_VARCHAR(b)) FROM hex;Sortie :
+------+----------+--------------------------------------+ | V | B | TRY_HEX_DECODE_STRING(TO_VARCHAR(B)) | |------+----------+--------------------------------------| | ABab | 41426162 | ABab | +------+----------+--------------------------------------+