Python MySQL Var
- Föregående Sida MySQL Välj
- Nästa Sida MySQL Sortera Efter
Använd filter för att välja
När du väljer poster från en tabell kan du använda "WHERE"-satsen för att filtrera urvalet:
Exempel
Välj poster där adressen är "Park Lane 38", resultat:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "Välj alla rader från tabellen customers" WHERE address ='Park Lane 38'" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x)
Jokertecken
Du kan också välja poster som börjar med, innehåller eller slutar med en given bokstav eller fras.
Använd %
Betecknar jokertecken:
Exempel
Välj poster där adressen innehåller ordet "way":
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "Välj alla rader från tabellen customers där adressen liknar '%way%" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x)
Förhindra SQL-injektion
När användare anger sökvärden, bör du escapera dessa värden.
Detta är för att förhindra SQL-injektion, en vanlig nätverkshackareteknik som kan skada eller missbruka din databas.
mysql.connector-modulen har metoder för att escapera sökvärden:
Exempel
Använd metoden med placeholder %s för att escapera sökvärden:
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 = ("Yellow Garden 2", ) mycursor.execute(sql, adr) myresult = mycursor.fetchall() for x in myresult: print(x)
- Föregående Sida MySQL Välj
- Nästa Sida MySQL Sortera Efter