Mysql
 sql >> Base de données >  >> RDS >> Mysql

Impossible de voir la valeur du champ MySQL BIT lors de l'utilisation de SELECT

La raison pour laquelle vous ne pouvez pas le voir dans le terminal est que les valeurs binaires sont des caractères non imprimables.

Insérons les valeurs suivantes :

INSERT INTO `my_table` (`ID`, `enabled`)
VALUES (1,b'1'),(2,b'0');

Sélectionnez-les ensuite pour les classer :

mysql> SELECT * FROM my_table INTO OUTFILE '/tmp/my_table.txt' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';

Voyons d'abord notre /tmp/my_table.txt fichier en texte brut :

puis en vue hexadécimale :

Pour pouvoir voir ces valeurs, vous pouvez simplement CAST les dans SELECT :

SELECT id, CAST(enabled AS UNSIGNED) AS enabled FROM my_table

Et cela produira la sortie suivante :

+----+---------+
| id | enabled |
+----+---------+
|  1 |       1 |
|  2 |       0 |
+----+---------+
2 rows in set (0.00 sec)