Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menggunakan Pembolehubah dengan Selamat dalam Pernyataan SQL Python?

Bagaimana untuk Menggunakan Pembolehubah dengan Selamat dalam Pernyataan SQL Python?

Susan Sarandon
Lepaskan: 2024-12-30 09:34:16
asal
374 orang telah melayarinya

How to Safely Use Variables in Python SQL Statements?

Menggunakan Pembolehubah dalam Penyata SQL dalam Python

Apabila bekerja dengan operasi pangkalan data dalam Python, selalunya perlu untuk memasukkan pembolehubah ke dalam pernyataan SQL. Walau bagaimanapun, jika pembolehubah ini dibenamkan terus ke dalam teks pertanyaan, Python akan mentafsirkannya sebagai sebahagian daripada pertanyaan, yang boleh membawa kepada hasil yang tidak dijangka.

Untuk mengelakkan isu ini, pembolehubah harus dihantar sebagai parameter kepada SQL kenyataan. Kaedah pilihan untuk mencapai ini ialah menggunakan ruang letak dalam pertanyaan dan lulus nilai sebagai tuple:

cursor.execute("INSERT INTO table NILAI (%s, %s, %s)", (var1 , var2, var3))

Dalam contoh ini:

  • Teks pertanyaan mengandungi ruang letak (%s) untuk mewakili tempat nilai pembolehubah harus dimasukkan.
  • Nilai (var1, var2, var3) dihantar sebagai tuple kepada kaedah execute().

API pangkalan data mengendalikan pelarian dan petikan nilai yang betul, memastikan pemasukannya selamat ke dalam pangkalan data.

Adalah penting untuk ambil perhatian bahawa menggunakan operator pemformatan rentetan seperti (%) untuk memasukkan pembolehubah adalah tidak disyorkan kerana ia tidak menyediakan pelarian yang betul, yang boleh membawa kepada kelemahan keselamatan seperti serangan suntikan SQL.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Pembolehubah dengan Selamat dalam Pernyataan SQL Python?. 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