


Mengapa Pertanyaan MySQL Python Saya Melemparkan Ralat 'Tidak semua parameter digunakan dalam pernyataan SQL'?
Jan 06, 2025 pm 07:30 PMMemahami Ralat "Tidak semua parameter digunakan dalam pernyataan SQL"
Apabila bekerja dengan pangkalan data MySQL menggunakan Python, anda mungkin menghadapi ralat menyatakan "Tidak semua parameter digunakan dalam pernyataan SQL." Ralat ini berlaku apabila bilangan parameter yang dinyatakan dalam pertanyaan SQL tidak sepadan dengan bilangan nilai yang disediakan dalam tuple data.
Dalam coretan kod yang disediakan, pernyataan SQL menyediakan pertanyaan INSERT untuk menambah pengguna ke jadual bernama 'tbluser' dalam pangkalan data 'DB'. Walau bagaimanapun, isu timbul dalam baris berikut:
add_user = ("INSERT INTO DB.tbluser " "(username, department, startyear, currentpos, link) " "VALUES (%s, %s, %d, %d, %s)")
Parameter integer (iaitu, %d) digunakan untuk nilai 'startyear' dan 'currentpos', manakala parameter rentetan (%s) ialah digunakan untuk nilai-nilai lain. Ketidakpadanan antara jenis parameter dan nilai data ini membawa kepada ralat.
Untuk menyelesaikan isu, ubah suai pernyataan SQL untuk menggunakan %s sebagai penanda parameter untuk semua nilai:
add_user = ("INSERT INTO DB.tbluser " "(username, department, startyear, currentpos, link) " "VALUES (%s, %s, %s, %s, %s)")
Ini memastikan bahawa bilangan parameter sepadan dengan bilangan nilai yang disediakan dalam tuple data.
Ingat bahawa penyesuai pangkalan data yang berbeza mungkin menggunakan parameter yang berbeza penanda, jadi sentiasa rujuk dokumentasi khusus untuk penyesuai yang anda gunakan.
Atas ialah kandungan terperinci Mengapa Pertanyaan MySQL Python Saya Melemparkan Ralat 'Tidak semua parameter digunakan dalam pernyataan SQL'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kurangkan penggunaan memori MySQL di Docker

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table?

Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama

Apa itu SQLite? Gambaran Keseluruhan Komprehensif

Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin)

Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah

Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)?

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL?
