:: DEVELOPER ZONE
MySQL supporte les valeurs hexadécimales. Dans un contexte numérique, elles agissent comme des entiers (précision 64-bit). Dans un contexte de chaîne, elles agissent comme une chaîne binaire où chaque paire de caractères hexadécimaux est convertie en caractère :
mysql> SELECT x'4D7953514C';
-> 'MySQL'
mysql> SELECT 0xa+0;
-> 10
mysql> SELECT 0x5061756c;
-> 'Paul'
En MySQL 4.1 (et en MySQL 4.0 si vous utilisez l'option --new), le type par
défaut d'une valeur hexadécimale est chaîne. Si vous voulez vous assurer qu'une
telle valeur est traitée comme un nombre, vous pouvez utiliser CAST(... AS UNSIGNED) :
mysql> SELECT 0x41, CAST(0x41 AS UNSIGNED);
-> 'A', 65
La syntaxe 0x est basée sur ODBC. Les chaînes hexadécimales sont souvent
utilisées par ODBC pour fournir des valeurs aux colonnes BLOB.
La syntaxe x'hexstring' est nouvelle en 4.0 et est basée sur le standard SQL.
Depuis MySQL 4.0.1, vous pouvez convertir une chaîne ou nombre en chaîne au format
hexadécimal avec la fonction HEX() :
mysql> SELECT HEX('cat');
-> '636174'
mysql> SELECT 0x636174;
-> 'cat'
© 1995-2005 MySQL AB. All rights reserved.
