MD5函数返回空结果

时间:2013-01-18 00:02:29

标签: mysql md5

我试图从我的数据库返回一个MD5编码的字符串值,但它只返回一个空白结果(不为空,只是空白)。 我试过运行这个查询并获得相同的结果:

SELECT MD5('test');

我已经尝试重启MySQL服务器,MySQL Workbench等。但是得到了相同的结果。 如果我尝试在不同的数据库/服务器上运行相同的命令,它会很好地返回哈希字符串。

我做错了什么?我是否有意外禁用的设置?

1 个答案:

答案 0 :(得分:9)

在MySQL v5.5.3之前,MD5()返回了二进制字符串。

默认情况下,MySQL Workbench不显示二进制字符串(以避免意外误解);但是可以在输出网格中显示二进制字符串值:View>编辑>偏好> SQL编辑器>将BINARY/VARBINARY视为非二进制字符串。

或者,升级MySQL服务器或将结果转码为非二进制字符集:

SELECT CONVERT(MD5('test') USING utf8)