我运行这个样本代码,我发现谷歌搜索时:不是十六进制数字MD5(RAND())上的MySQL只返回数字
SELECT MD5(RAND())
但是,令我吃惊的是,MD5是返回纯数字。 使用CONV(MD5(RAND()), 10, 16)
似乎解决我的问题,但MySQL的文档指出MD5函数应该以十六进制已经返回一个字符串。
我做错了什么?
EDIT2:这个问题只出现与phpMyAdmin,MySQL的不的命令行版本存在。
编辑:我的MySQL版本:
mysql --version
mysql Ver 14.14 Distrib 5.1.41, for debian-linux-gnu (x86_64) using readline 6.1
一个例子MD5值:
6338666264663132376461666163313063656535633666616266396530613335
此外,CONV返回一个非常非常短的字符串,如:
B9
此字符串通常是单位数字,而我到现在为止最长的是5位数字。
@Gumbo那么什么是“9”做在中间的那个? – luiscubal 2010-09-10 14:56:44
是的,我错了。而长度为64的则是基地4获得MD5的128位。这真的只是一个MD5值吗? – Gumbo 2010-09-10 15:00:47