Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Pertanyaan MySQL Parameter Saya Melemparkan 'TypeError: tidak semua argumen ditukar semasa pemformatan rentetan'?

Mengapa Pertanyaan MySQL Parameter Saya Melemparkan 'TypeError: tidak semua argumen ditukar semasa pemformatan rentetan'?

Linda Hamilton
Lepaskan: 2024-12-03 04:58:09
asal
282 orang telah melayarinya

Why Does My Parameterized MySQL Query Throw a

Pertanyaan SQL Berparameter: Menavigasi "TypeError: tidak semua argumen ditukar semasa pemformatan rentetan"

Dalam MySQLdb, melaksanakan pertanyaan SQL berparameter boleh membawa kepada a "TypeError: tidak semua argumen ditukar semasa pemformatan rentetan." Ralat ini berlaku apabila pertanyaan menjangkakan bilangan argumen tertentu, tetapi argumen yang diberikan tidak sepadan dengan jangkaan.

Untuk membetulkan ralat ini, gantikan sintaks warisan dengan pendekatan yang lebih moden. Daripada menggunakan:

cur.execute("SELECT * FROM records WHERE email LIKE '%s'", search)
Salin selepas log masuk

Gunakan sintaks ini:

cur.execute("SELECT * FROM records WHERE email LIKE %s", [search])
Salin selepas log masuk

Parameter kedua dalam execute() kini ialah senarai yang mengandungi argumen yang hendak ditukar. Setiap argumen dalam senarai ini mesti boleh ditukar kepada jenis data yang dijangkakan dalam pertanyaan. Dalam kes ini, pertanyaan menjangkakan rentetan, jadi carian perlu disertakan dalam senarai satu elemen.

Atas ialah kandungan terperinci Mengapa Pertanyaan MySQL Parameter Saya Melemparkan 'TypeError: tidak semua argumen ditukar semasa pemformatan rentetan'?. 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