Menggunakan Penyata Disediakan dengan MySQL dalam Python
Apabila bekerja dengan operasi pangkalan data, pernyataan yang disediakan boleh meningkatkan prestasi pertanyaan dengan ketara. Dalam Python, pernyataan yang disediakan boleh digunakan dengan MySQL.
Format Pertanyaan Berparameter dalam Python
Dalam Python, anda boleh mencipta pertanyaan berparameter menggunakan format berikut:
cursor.execute("SELECT FROM tablename WHERE fieldname = %s", [value])
Penanda parameter %s bertindak sebagai pemegang tempat untuk nilai sebenar. Pemacu pangkalan data yang berbeza mungkin menggunakan gaya parameterisasi yang berbeza-beza. Untuk menentukan gaya yang sesuai untuk pemandu anda, anda boleh mengimport modul pemacu dan mencetak atribut paramstylenya.
Gaya Parameterisasi Disokong
Mengikut Cadangan Peningkatan Python (PEP- 249), gaya parameterisasi berikut disokong:
Contoh Penggunaan
Untuk menunjukkan penggunaan pernyataan yang disediakan, pertimbangkan perkara berikut contoh:
import mysql.connector db = mysql.connector.connect( host="localhost", user="username", password="password", database="database_name" ) cursor = db.cursor() # Create a parameterized query parameterized_query = "SELECT * FROM users WHERE name = %s" # Execute the query with the provided parameter cursor.execute(parameterized_query, ("John Doe",)) # Fetch the results results = cursor.fetchall() # Close the cursor and connection cursor.close() db.close()
Menggunakan pertanyaan berparameter memastikan kod anda dilindungi daripada serangan suntikan SQL dan meningkatkan prestasi pertanyaan dengan membenarkan pangkalan data menyediakan pelan pertanyaan lebih awal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Penyata Disediakan dengan MySQL dalam Python untuk Meningkatkan Prestasi Pertanyaan dan Mencegah Suntikan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!