Python MySQL Update Table
อัพเดทตาราง
คุณสามารถอัปเดตระเบียนที่มีอยู่ในตารางได้โดยใช้คำสั่ง "UPDATE":
ตัวอย่าง
เขียนทับคอลัมน์ที่อยู่จาก "Valley 345" เป็น "Canyon 123":
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor =
mydb.cursor()
sql = "UPDATE customers SET address = 'Canyon 123'
WHERE address = 'Valley 345'"
mycursor.execute(sql)
mydb.commit()
print(mycursor.rowcount, "record(s) affected")
สำคัญ!:สังเกตคำสั่ง:
mydb.commit()
. จำเป็นต้องทำการเปลี่ยนแปลง มิฉะนั้น จะไม่มีการเปลี่ยนแปลงใดๆ กับตาราง
สังเกตคำสั่ง WHERE ในไวยากรณ์ UPDATE:ส่วนคำสั่ง WHERE ระบุว่าเร็กคอร์ดใดหรือเร็กคอร์ดใดที่ควรได้รับการอัปเดต หากคุณละเว้นส่วนคำสั่ง WHERE ระเบียนทั้งหมดจะได้รับการอัปเดต!
ป้องกันการฉีด SQL
ถือเป็นแนวทางปฏิบัติที่ดีในการหลีกเลี่ยงค่าของข้อความค้นหาใดๆ รวมทั้งในข้อความแจ้งการอัปเดต
นี่คือการป้องกันการฉีด SQL ซึ่งเป็นเทคนิคการแฮ็คเว็บทั่วไปในการทำลายหรือใช้ฐานข้อมูลของคุณในทางที่ผิด
โมดูล mysql.connector ใช้ตัวยึดตำแหน่ง%s
เพื่อหนีค่าในคำสั่ง delete:
ตัวอย่าง
ค่า Escape โดยใช้วิธีตัวยึดตำแหน่ง%s
:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="mydatabase"
)
mycursor = mydb.cursor()
sql = "UPDATE customers SET address = %s
WHERE address = %s"
val = ("Valley 345", "Canyon 123")
mycursor.execute(sql,
val)
mydb.commit()
print(mycursor.rowcount, "record(s)
affected")