Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Não é possível ver o valor do campo MySQL BIT ao usar SELECT


A razão pela qual você não pode vê-lo no terminal é porque os valores de bits são caracteres não imprimíveis.

Vamos inserir os seguintes valores:
INSERT INTO `my_table` (`ID`, `enabled`)
VALUES (1,b'1'),(2,b'0');

Em seguida, selecione-os para arquivar:
mysql> SELECT * FROM my_table INTO OUTFILE '/tmp/my_table.txt' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';

Primeiro vamos ver nosso /tmp/my_table.txt arquivo como texto simples:

e, em seguida, na visualização hexadecimal:

Para poder ver esses valores, você pode simplesmente CAST -los em SELECT :
SELECT id, CAST(enabled AS UNSIGNED) AS enabled FROM my_table

E isso produzirá a seguinte saída:
+----+---------+
| id | enabled |
+----+---------+
|  1 |       1 |
|  2 |       0 |
+----+---------+
2 rows in set (0.00 sec)