Einstellung der PASSWORD-Funktion in MySQL Server 8.0
In MySQL Server Version 8.0 ist die PASSWORD-Funktion veraltet und funktioniert nicht mehr wie vorgesehen. Dieses Problem tritt auf, wenn Abfragen ausgeführt werden, die zur Kennwortvalidierung auf der PASSWORD-Funktion basieren.
Fehlermeldung
Beim Ausführen einer Abfrage, die die PASSWORD-Funktion in MySQL Server Version 8.0 enthält .12, kann der folgende Fehler auftreten:
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...
Ersatz für PASSWORT-Funktion
Um dieses Problem zu beheben, wird empfohlen, den folgenden Ausdruck als zu verwenden Ersatz für die PASSWORT-Funktion:
SHA1(UNHEX(SHA1()))
Beispiel
Zum Beispiel, wenn Sie zuvor eine Abfrage hatten wie:
SELECT * FROM users WHERE login = 'FABIO' AND pwd = PASSWORD('2018') LIMIT 0, 50000
Das können Sie Ersetzen Sie die PASSWORD-Funktion durch den Ausdruck:
SELECT * FROM users WHERE login = 'FABIO' AND pwd = SHA1(UNHEX(SHA1('2018'))) LIMIT 0, 50000
Durch die Verwendung des bereitgestellten Ersatzausdrucks können Sie sicherstellen, dass Ihre Abfragen in MySQL Server Version 8.0 weiterhin korrekt funktionieren und den oben genannten Fehler vermeiden.
Das obige ist der detaillierte Inhalt vonWas ist der Ersatz für die veraltete PASSWORD-Funktion in MySQL Server 8.0?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!