在MySQL的
PASSWORD
函数的文档中:
为什么我们不应该在我们的应用程序中使用这个函数?PASSWORD()函数是MySQL服务器认证系统中使用的;您不应该在您自己的应用程序中使用它。为此,请考虑使用MD5()或SHA1()。
它是一个快速哈希函数(我相信是SHA1),这对于密码哈希来说不是一个好的属性。
他们可能会在MySQL的未来版本中更改使用的哈希函数,从而破坏您的应用程序。他们已经做过一次这样的更改,因此有了OLD_PASSWORD()函数。
它不自然地使用盐(尽管如果您想在调用PASSWORD函数之前将其附加到密码中,就可以使用盐)
它是非标准SQL,因此如果您需要将应用程序移植到另一个平台,您需要找到替代方案。