HEX & UNHEX (MySQL)

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Met hex en unhex converteer je tussen karakters en hun tekencodering. Het is een specifiek geval van de functie conv:

  • hex(n) <-> conv(n, 10, 16)
  • unhex(n) <-> conv(hex(n), 16, 10)

Voorbeelden

Hex-code voor "A"?

mysql> select hex("A");
+----------+
| hex("A") |
+----------+
| 41       |
+----------+
1 row in set (0,00 sec)

En andersom:

mysql> select unhex(41);
+-----------+
| unhex(41) |
+-----------+
| A         |
+-----------+
1 row in set (0,01 sec)

Als de tekens A-F voorkomen in het argument voor unhex, moet het argument een string zijn - Anders krijg je een foutmelding.

Multi-byte-argumenten zijn geen probleem:

mysql> select unhex("e282ac");
+-----------------+
| unhex("e282ac") |
+-----------------+
| €               |
+-----------------+
1 row in set (0,00 sec)

En omgekeerd:

mysql> select hex("blub");
+-------------+
| hex("blub") |
+-------------+
| 626C7562    |
+-------------+
1 row in set (0,00 sec)

Bronnen