MySQL没有正确插入二进制数据?应该使用哪种数据类型?
为此,请使用BIT数据类型。让我们首先创建一个表-
create table DemoTable(binaryValue BIT(5));
使用插入命令在表中插入一些记录-
insert into DemoTable values(10); insert into DemoTable values(15);
使用select语句显示表中的所有记录-
select *from DemoTable;
这将产生以下输出。现在您可以看到记录不可见-
+-------------+ | binaryValue | +-------------+ | | | | +-------------+ 2 rows in set (0.00 sec)
要显示以上记录(二进制数据),您需要使用bin()-
select bin(binaryValue) from DemoTable;
这将产生以下输出>
+------------------+ | bin(binaryValue) | +------------------+ | 1010 | | 1111 | +------------------+ 2 rows in set (0.00 sec)
现在让我们来看另一个例子。
以下是插入二进制数据的查询,但是使用select时,这些值不可见-
insert into DemoTable VALUES (b'1010'),(b'1111'); Records: 2 Duplicates: 0 Warnings: 0 select *from DemoTable; +-------------+ | binaryValue | +-------------+ | | | | | | | | +-------------+ 4 rows in set (0.00 sec)
让我们再次检查表记录,并使用bin()显示-
select bin(binaryValue) from DemoTable;
这将产生以下输出-
+------------------+ | bin(binaryValue) | +------------------+ | 1010 | | 1111 | | 1010 | | 1111 | +------------------+ 4 rows in set (0.00 sec)