Rumah > pangkalan data > tutorial mysql > Mengapa Saya Mendapat MySQLSyntaxErrorException dengan Penyata Saya yang Disediakan?

Mengapa Saya Mendapat MySQLSyntaxErrorException dengan Penyata Saya yang Disediakan?

Mary-Kate Olsen
Lepaskan: 2024-11-01 08:25:02
asal
886 orang telah melayarinya

Why Am I Getting a MySQLSyntaxErrorException with My Prepared Statement?

Ralat Penyata Disediakan MySQL: MySQLSyntaxErrorException

Dalam pengaturcaraan Java, MySQLSyntaxErrorException dilemparkan apabila terdapat masalah dengan sintaks pernyataan SQL . Satu senario di mana ralat ini mungkin berlaku ialah apabila menggunakan pernyataan yang disediakan dengan pertanyaan berparameter. Mari kita selidiki kes tertentu dan berikan penyelesaian.

Kod yang diberikan mengandungi pernyataan pilih menggunakan pernyataan yang disediakan untuk mendapatkan semula data daripada jadual ads_tbl berdasarkan ad_id. Walau bagaimanapun, ralat ditemui semasa melaksanakan pernyataan: Anda mempunyai ralat dalam sintaks SQL anda; semak manual yang sepadan dengan versi pelayan MySQL anda untuk sintaks yang betul untuk digunakan berhampiran '?' pada baris 1. Ini menunjukkan masalah dengan sintaks pernyataan SQL.

Setelah diperiksa lebih dekat, isunya terletak pada baris:

<code class="java">rs = stmt.executeQuery(selectSQL);</code>
Salin selepas log masuk

Cara yang betul untuk melaksanakan pernyataan yang disediakan adalah untuk meninggalkan pernyataan SQL itu sendiri sebagai hujah untuk melaksanakanQuery(). Ini kerana pernyataan yang disediakan telah pun disediakan dengan parameter yang sesuai, dan memanggil executeQuery() tanpa pernyataan SQL akan melaksanakan pernyataan yang disediakan.

Oleh itu, kod harus diubah suai kepada yang berikut:

<code class="java">rs = stmt.executeQuery();</code>
Salin selepas log masuk

Dengan membuat perubahan ini, pernyataan SQL akan dilaksanakan dengan betul menggunakan pernyataan yang disediakan dan ralat harus diselesaikan.

Atas ialah kandungan terperinci Mengapa Saya Mendapat MySQLSyntaxErrorException dengan Penyata Saya yang Disediakan?. 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