The way to Filter WHERE MySQL Queries in Python


First, you will want the mysql.connector. In case you are not sure of get this setup, discuss with The way to Set up MySQL Driver in Python.

The way to 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",
  person = "username",
  password = "YoUrPaSsWoRd",
  database = "your_database"
)

mycursor = mydb.cursor()
sql = "SELECT * FROM clients WHERE deal with ='London Highway'"
mycursor.execute(sql)

myresult = mycursor.fetchall()

for x in myresult:
  print(x)

The way to Choose and Filter Wildcard Characters in Python

To filter wildcard characters, you mix the WHEREand LIKE key phrases, and place the % image the place the wildcards would happen.

Within the beneath instance, we are saying something that has the phrase street in it someplace. Notice that this may exclude values that both begin or finish with street.

import mysql.connector

mydb = mysql.connector.join(
  host = "localhost",
  person = "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)

The way to Stop SQL Injection in your WHERE clause

As a substitute of passing dynamic values instantly into your question, reasonably go them because the second argument to the execute command, as a set.

import mysql.connector

mydb = mysql.connector.join(
  host = "localhost",
  person = "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)

Leave a Reply