با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره کامل آموزش پایتون ، را دنبال می کنند. در قسمت قبلی به دستور SELECT در MySQL در پایتون پرداختیم ، در این جلسه قصد داریم به آموزش دستور WHERE در MySQL در پایتون بپردازیم.
با استفاده از دستور “WHERE” می توانید رکورد های انتخابی از جدول را فیلتر کنید.
در مثال زیر، رکورد هایی را که فیلد address آن ها برابر “Park Lane 38” است را انتخاب می کنیم:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | 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() for x in myresult: print(x) |
همچنین می توانید رکورد هایی را انتخاب کنید که با حروف مشخصی آغاز شده اند یا شامل آن ها می باشند و یا با آن ها خاتمه یافته اند.
برای این کار از % استفاده می کنیم.
در مثال زیر رکورد هایی را انتخاب می کنیم که حاوی کلمه way است:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | 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() for x in myresult: print(x) |
اگر مقادیر کوئری توسط کاربر دریافت می شود، باید مواظب باشید.
SQL Injection یک تکنیک هک رایج برای نابود کردن و یا سوء استفاده از پایگاه داده شما است.
برای جلوگیری از این حمله از mysql.connector استفاده می کنیم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | 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) |
جلسه آموزش دستور WHERE در MySQL در پایتون Python نیز به پایان رسید.
در جلسه بعد به آموزش مرتب سازی نتایج MySQL در پایتون خواهیم پرداخت. با ما همراه باشید.