我運行這個樣本代碼,我發現谷歌搜索時:不是十六進制數字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