How you can Filter WHERE MySQL Queries in Python
First, you’ll need the mysql.connector
. In case you are uncertain of get this setup, consult with How you can Set up MySQL Driver in Python.
How you can Choose from MySQL with a Filter in Python#
You merely specify the WHERE
clause in your SQL assertion as follows:
import mysql.connector
mydb = mysql.connector.join(
host = "localhost",
consumer = "username",
password = "YoUrPaSsWoRd",
database = "your_database"
)
mycursor = mydb.cursor()
sql = "SELECT * FROM clients WHERE deal with ='London Street'"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
How you can Choose and Filter Wildcard Characters in Python#
To filter wildcard characters
, you mix the WHERE
and LIKE
key phrases, and place the %
image the place the wildcards would happen.
Within the under instance, we are saying something that has the phrase street
in it someplace. Word that this can exclude values that both begin or finish with street
.
import mysql.connector
mydb = mysql.connector.join(
host = "localhost",
consumer = "username",
password = "YoUrPaSsWoRd",
database = "your_database"
)
mycursor = mydb.cursor()
sql = "SELECT * FROM clients WHERE deal with LIKE '%street%'"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
How you can Stop SQL Injection in your WHERE clause#
As an alternative of passing dynamic values straight into your question, fairly move them because the second argument to the execute
command, as a set
.
import mysql.connector
mydb = mysql.connector.join(
host = "localhost",
consumer = "username",
password = "YoUrPaSsWoRd",
database = "your_database"
)
mycursor = mydb.cursor()
sql = "SELECT * FROM clients WHERE deal with = %s"
adr = ("Maple Drive", )
mycursor.execute(sql, adr)
myresult = mycursor.fetchall()
for x in myresult:
print(x)