Where in MySQL in Python
- Pagina Precedente Selezionare MySQL
- Pagina Successiva Ordinare per MySQL
使用筛选器来选取
从表中选择记录时,可以使用 "WHERE" 语句对选择进行筛选:
Esempio
选择 "Park Lane 38" 的记录,结果:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers" WHERE address ='Park Lane 38'" mycursor.execute(sql) myresult = mycursor.fetchall() per x in myresult: print(x)
通配符
您也可以选择以给定字母或短语开头、包含或结束的记录。
请使用 %
表示通配符:
Esempio
选择包含单词 "way" 的地址记录:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers WHERE address LIKE '"%way%" mycursor.execute(sql) myresult = mycursor.fetchall() per x in myresult: print(x)
Prevenire SQL Injection
Quando l'utente fornisce valori di ricerca, dovresti evitare di interpretarli.
Questo è fatto per prevenire gli attacchi SQL Injection, una tecnica Hacker comune che può danneggiare o abusare del tuo database.
Il modulo mysql.connector ha metodi per evitare di interpretare i valori di ricerca:
Esempio
Usare il metodo di sostituzione dei segnaposto %s per evitare di interpretare i valori di ricerca:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "SELECT * FROM customers WHERE address =" %s" adr = ("Giardino Giallo 2", ) mycursor.execute(sql, adr) myresult = mycursor.fetchall() per x in myresult: print(x)
- Pagina Precedente Selezionare MySQL
- Pagina Successiva Ordinare per MySQL