جلوگیری از تزریق SQL(Prevent SQL Injection)

گریز از مقادیر هر پرس و جو، همچنین در جملات حذف، روش خوبی در نظر گرفته می شود.


این برای جلوگیری از تزریق SQL است، که یک تکنیک رایج هک وب است
پایگاه داده خود را از بین ببرید یا سوء استفاده کنید.


ماژول mysql.connector از مکان نگهدار %s برای فرار از مقادیر در عبارت delete استفاده می کند:



مثال


Escape values by using the placeholder %s
method:



import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
 
user="youruse
ame
",
  passwd="yourpassword",
  database="mydatabase"
)


mycursor = mydb.cursor()

sql = "DELETE FROM customers WHERE address =
%s"
adr = ("Yellow Garden 2", )


mycursor.execute(sql, adr)

mydb.commit()

print(mycursor.rowcount, "record(s) deleted")