Error while executing the PASSWORD
function in MySQL Server version 8.0.12
I have the following query:
SELECT *
FROM users
WHERE login = 'FABIO'
AND pwd = PASSWORD('2018')
LIMIT 0, 50000
I am getting this error:
Error Code: 1064. You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right
syntax to use near
OP's MySQL Server version is 8.0.12. From MySQL Documentation, PASSWORD function has been deprecated for version > 5.7.5:
Note
The information in this section applies fully only before MySQL 5.7.5,
and only for accounts that use the mysql_native_password or
mysql_old_password authentication plugins. Support for pre-4.1
password hashes was removed in MySQL 5.7.5. This includes removal of
the mysql_old_password authentication plugin and the OLD_PASSWORD()
function. Also, secure_auth cannot be disabled, and old_passwords
cannot be set to 1.
As of MySQL 5.7.5, only the information about 4.1 password hashes and
the mysql_native_password authentication plugin remains relevant.
Instead, of the PASSWORD
function, you can use much better and secure encryption functions from here. More details from the MySQL server team can be seen here.