Memilih Dengan Filter
Saat memilih record dari tabel, kita dapat memfilter pemilihan dengan menggunakan pernyataan “WHERE”.
Contoh:
Pilih record dengan alamat “Park Lane 38”: hasil
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="myusername", password="mypassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers WHERE address = 'Park Lane 38'" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x)
Karakter Wildcard
Kita juga dapat memilih record yang dimulai, menyertakan, atau diakhiri dengan huruf atau frasa tertentu.
Gunakan% untuk mewakili karakter wildcard.
Contoh:
Pilih record yang alamatnya mengandung kata “way”
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="myusername", password="mypassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers WHERE address Like '%way%'" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x)
Mencegah Injeksi SQL
Saat nilai kueri diberikan oleh pengguna, kita harus keluar dari nilai.
Ini untuk mencegah terjadinya injeksi SQL, yang merupakan teknik peretasan web umum untuk menghancurkan atau menyalahgunakan database.
Modul mysql.connector memiliki metode untuk keluar dari nilai kueri.
Contoh:
Keluar dari nilai kueri dengan menggunakan metode% s placholder
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="myusername", password="mypassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers WHERE address = %s" adr = ("Yellow Garden 2", ) mycursor.execute(sql, adr) myresult = mycursor.fetchall() for x in myresult: print(x)