Rumah >pangkalan data >tutorial mysql >Bagaimana untuk memasukkan pembolehubah dengan selamat ke dalam penyataan SQL menggunakan Python?

Bagaimana untuk memasukkan pembolehubah dengan selamat ke dalam penyataan SQL menggunakan Python?

Susan Sarandon
Susan Sarandonasal
2025-01-25 15:36:11365semak imbas

How to Safely Insert Variables into SQL Statements Using Python?

Masukkan pembolehubah ke dalam pernyataan SQL dalam python

Dalam Python, apabila menggunakan pembolehubah untuk melaksanakan penyataan SQL, adalah penting untuk menghantar pembolehubah dengan betul, yang boleh menghalang serangan suntikan yang berpotensi dan memastikan pelaksanaan yang betul.

Untuk memasukkan pembolehubah ke dalam pernyataan SQL, gunakan simbol tempat yang diduduki dalam pernyataan dan menghantar pembolehubah sebagai kumpulan logam. Sebagai contoh, pertimbangkan kod python berikut:

di antara mereka, var1 adalah integer, var2 dan var3 adalah rentetan.
<code>cursor.execute("INSERT INTO table VALUES var1, var2, var3")</code>

untuk menghantar pembolehubah dengan betul dengan betul, sila gunakan kaedah pelaksanaan tupel yang mengandungi kedudukan dan pembolehubah yang mengandungi pembolehubah:

Sila ambil perhatian bahawa penggunaan kedudukan (%s) dalam pernyataan SQL (%s) dan kurungan di sekitar kumpulan kumpulan dalam kaedah pelaksanaan.
<code>cursor.execute("INSERT INTO table VALUES (%s, %s, %s)", (var1, var2, var3))</code>

Adalah penting untuk mengelakkan menggunakan format format rentetan (%), kerana ia akan memintas putaran dan rujukan yang betul, supaya pertanyaan itu mudah disuntik dengan SQL ke dalam serangan.

Atas ialah kandungan terperinci Bagaimana untuk memasukkan pembolehubah dengan selamat ke dalam penyataan SQL menggunakan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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