"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment résoudre les problèmes de fonction PASSWORD dans MySQL Server 8.0 : un guide de syntaxe

Comment résoudre les problèmes de fonction PASSWORD dans MySQL Server 8.0 : un guide de syntaxe

Publié le 2024-11-19
Parcourir:738

How to Fix PASSWORD Function Issues in MySQL Server 8.0: A Syntax Guide

Résoudre les problèmes de fonction PASSWORD dans MySQL Server 8.0

Lors de la tentative d'exécution de la fonction PASSWORD dans MySQL Server version 8.0.12, certains scénarios peuvent déclencher une erreur. Cet article vise à résoudre ces problèmes et à fournir une solution viable.

Code d'erreur 1064

Si vous rencontrez l'erreur « Code d'erreur : 1064. Vous avez une erreur dans votre syntaxe SQL...", cela indique un problème avec la syntaxe de votre requête. Plus précisément, la syntaxe de la fonction PASSWORD a changé dans MySQL Server version 8.0.

Nouvelle syntaxe

Avec MySQL Server 8.0, la fonction PASSWORD a été obsolète et remplacée par une autre mécanisme de hachage. Pour maintenir la compatibilité, vous devez utiliser la syntaxe suivante pour générer un hachage équivalent à celui produit par la fonction PASSWORD dans les versions précédentes :

CONCAT('*', UPPER(SHA1(UNHEX(SHA1('my_password')))))

Exemple

Dans la requête fournie, "pwd = PASSWORD('2018')" représente la comparaison de la colonne "pwd" avec un mot de passe statique. Pour récupérer les utilisateurs avec le mot de passe '2018' en utilisant la nouvelle syntaxe, vous pouvez modifier la requête comme suit :

SELECT * 
FROM users 
WHERE login = 'FABIO' 
  AND pwd = CONCAT('*', UPPER(SHA1(UNHEX(SHA1('2018')))))
LIMIT 0, 50000
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3