MySQL返回BLOB而非'abcd'字符串的问题求助
解决MySQL返回BLOB而非预期字符串的问题
显式转换数据类型:在查询里用
CAST()或CONVERT()强制把结果转为字符串,比如:SELECT CAST('abcd' AS CHAR); -- 或者 SELECT CONVERT('abcd', CHAR);如果是查询字段,把字段名替换进去即可,比如
SELECT CAST(your_column AS CHAR) FROM your_table;调整客户端显示设置:以MySQL Workbench为例,打开
编辑 > 首选项 > SQL编辑器,找到将BINARY/VARBINARY视为非二进制字符串选项并勾选,重启客户端后再执行查询,就能正常显示字符串了。检查查询语句:确认是不是用到了返回二进制数据的函数(比如
UNHEX()),如果是这类情况,要么直接使用字符串字面量,要么把结果转成字符串类型。比如原本SELECT UNHEX('61626364')会返回BLOB,改成SELECT 'abcd'或者SELECT CAST(UNHEX('61626364') AS CHAR)即可。
内容的提问来源于stack exchange,提问作者Huyen My
相关产品推荐
相关产品推荐

