Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Membetulkan 'SQLSTATE[42000]: Ralat sintaks atau pelanggaran akses: 1064 Anda mempunyai ralat dalam sintaks SQL anda' dalam PDO?

Bagaimana untuk Membetulkan 'SQLSTATE[42000]: Ralat sintaks atau pelanggaran akses: 1064 Anda mempunyai ralat dalam sintaks SQL anda' dalam PDO?

Linda Hamilton
Lepaskan: 2024-12-31 09:13:20
asal
471 orang telah melayarinya

How to Fix

Ralat Sintaks PDO: "Anda Mempunyai Ralat dalam Sintaks SQL Anda"

Apabila menjalankan pertanyaan SQL dengan PDO, anda mungkin menghadapi ralat "SQLSTATE[42000]: Ralat sintaks atau pelanggaran akses: 1064 Anda mempunyai ralat dalam SQL anda sintaks." Ralat ini sering berlaku apabila kata kunci yang dikhaskan digunakan sebagai nama lajur tanpa petikan yang betul.

Contoh yang disediakan menggunakan nama lajur "dari" dalam pernyataan INSERT. "dari" ialah kata kunci terpelihara dalam SQL dan mesti dipetik menggunakan tanda belakang (`).

$sql = "INSERT INTO messages (`from`, `to`, `name`, `subject`, `message`) VALUES (:from, :to, :name, :subject, :message)";
Salin selepas log masuk
Salin selepas log masuk

Selain itu, "kepada" juga merupakan kata kunci terpelihara dan harus dipetik juga.

$sql = "INSERT INTO messages (`from`, `to`, `name`, `subject`, `message`) VALUES (:from, :to, :name, :subject, :message)";
Salin selepas log masuk
Salin selepas log masuk

Pilihan lain ialah menamakan semula lajur untuk mengelak daripada menggunakan kata kunci simpanan. Sebagai contoh, bukannya "dari", anda boleh menggunakan "pengirim" atau "from_email."

Menamakan semula lajur atau memetik kata kunci yang dikhaskan harus menyelesaikan ralat sintaks dan membenarkan pertanyaan untuk dilaksanakan dengan jayanya.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan 'SQLSTATE[42000]: Ralat sintaks atau pelanggaran akses: 1064 Anda mempunyai ralat dalam sintaks SQL anda' dalam PDO?. 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