MySQL WHERE


ULASHISH

Filtr bilan tanlang

Jadvaldan yozuvlarni tanlashda siz “QAYER” iborasi yordamida tanlovni filtrlashingiz mumkin:

Misol

Manzil "Park Lane 38" bo‘lgan yozuv(lar)ni tanlang: natija:

import mysql.connector mydb = mysql.connector.connect(   host="localhost",   user="yourusername",   password="yourpassword",   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)
Misolni ishga tushirish »

Joker belgilar

Shuningdek, siz berilgan harf yoki ibora bilan boshlanadigan, o‘z ichiga olgan yoki tugaydigan yozuvlarni tanlashingiz mumkin.

Joker belgilarni ifodalash uchun % dan foydalaning:

Misol

Manzilda "yo‘l" so‘zi bo‘lgan yozuvlarni tanlang:

import mysql.connector mydb = mysql.connector.connect(   host="localhost",   user="yourusername",   password="yourpassword",   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)
Misolni ishga tushirish »


SQL in’ektsiyasini oldini olish

So‘rov qiymatlari foydalanuvchi tomonidan taqdim etilganda, siz qiymatlarni escape qilishingiz (ekranlashingiz) kerak.

Bu ma’lumotlar bazasini yo‘q qilish yoki noto‘g‘ri ishlatish uchun keng tarqalgan veb-xakerlik texnikasi bo‘lgan SQL in’ektsiyalarining oldini olishdir.

mysql.connector modulida so‘rov qiymatlarini escape qilish (ekranlash) usullari mavjud:

Misol

placholder %s usuli yordamida so‘rov qiymatlaridan qochish:

import mysql.connector mydb = mysql.connector.connect(   host="localhost",   user="yourusername",   password="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)
Misolni ishga tushirish »

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!