Rumah > pangkalan data > tutorial mysql > Cara Membetulkan Isu Fungsi KATA LALUAN dalam Pelayan MySQL 8.0: Panduan Sintaks

Cara Membetulkan Isu Fungsi KATA LALUAN dalam Pelayan MySQL 8.0: Panduan Sintaks

Barbara Streisand
Lepaskan: 2024-10-31 07:13:02
asal
656 orang telah melayarinya

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

Selesaikan Masalah Fungsi KATA LALUAN dalam Pelayan MySQL 8.0

Apabila cuba untuk melaksanakan fungsi KATA LALUan dalam Pelayan MySQL versi 8.0.12, senario tertentu mungkin mencetuskan ralat. Artikel ini bertujuan untuk menangani isu tersebut dan menyediakan penyelesaian yang berdaya maju.

Kod Ralat 1064

Jika anda menghadapi ralat "Kod Ralat: 1064. Anda mempunyai ralat dalam sintaks SQL anda...", ini menunjukkan masalah dengan sintaks pertanyaan anda. Khususnya, sintaks fungsi PASSWORD telah berubah dalam Pelayan MySQL versi 8.0.

Sintaks Baharu

Dengan MySQL Server 8.0, fungsi PASSWORD telah ditamatkan penggunaannya dan digantikan dengan yang berbeza mekanisme pencincangan. Untuk mengekalkan keserasian, anda harus menggunakan sintaks berikut untuk menjana cincang yang setara dengan yang dihasilkan oleh fungsi PASSWORD dalam versi sebelumnya:

CONCAT('*', UPPER(SHA1(UNHEX(SHA1('my_password')))))
Salin selepas log masuk

Contoh

Dalam pertanyaan yang disediakan, "pwd = PASSWORD('2018')" mewakili perbandingan lajur "pwd" dengan kata laluan statik. Untuk mendapatkan semula pengguna dengan kata laluan '2018' menggunakan sintaks baharu, anda boleh mengubah suai pertanyaan seperti berikut:

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

Atas ialah kandungan terperinci Cara Membetulkan Isu Fungsi KATA LALUAN dalam Pelayan MySQL 8.0: Panduan Sintaks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan