ホームページ  >  記事  >  データベース  >  MySQL Server 8.0 で PASSWORD 関数の問題を修正する方法: 構文ガイド

MySQL Server 8.0 で PASSWORD 関数の問題を修正する方法: 構文ガイド

Barbara Streisand
Barbara Streisandオリジナル
2024-10-31 07:13:02654ブラウズ

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

MySQL Server 8.0 の PASSWORD 関数の問題のトラブルシューティング

MySQL Server バージョン 8.0.12 で PASSWORD 関数を実行しようとすると、特定のシナリオで問題が発生する可能性があります。エラーを引き起こします。この記事は、このような問題に対処し、実行可能な解決策を提供することを目的としています。

エラー コード 1064

エラー コード: 1064 が発生した場合は、次のエラーが発生します。 SQL 構文...」というメッセージは、クエリの構文に問題があることを示しています。具体的には、PASSWORD 関数の構文が MySQL Server バージョン 8.0 で変更されました。

新しい構文

MySQL Server 8.0 では、PASSWORD 関数は非推奨になり、別の関数に置き換えられました。ハッシュメカニズム。互換性を維持するには、次の構文を使用して、以前のバージョンの PASSWORD 関数によって生成されたハッシュと同等のハッシュを生成する必要があります。

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

Example

In提供されたクエリ「pwd = PASSWORD('2018')」は、「pwd」列と静的パスワードの比較を表します。新しい構文を使用してパスワード「2018」を持つユーザーを取得するには、クエリを次のように変更します:

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

以上がMySQL Server 8.0 で PASSWORD 関数の問題を修正する方法: 構文ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。