Python အခုံးအခုံးကို အမြင့်ပြင်းထားပါ၏

အခုံးအခုံးကို အမြင့်ပြင်းထားပါ၏

သင့်သည် "UPDATE" အပ်ကားကို အသုံးပြုပါ၍ အခုံးအခုံးကို အမြင့်ပြင်းထားပါ၏:

实例

နေရာစာအုပ်အရ "Valley 345" ကို "Canyoun 123" ဖြင့် အပ်ကားပြုလုပ်ပါ၏:

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  passwd="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()ပြင်ဆင်သင့်သည်၊ အခြားမူ အမြင့်ပြင်းထားသော အခုံးမှ အပြင်ဆင်မှုမပြုလိမ့်မည်။

ကျွန်ုပ်ကိုယ်တိုင် UPDATE ဘာသာစကားအရ WHERE အပ်ကားသည့်အပ်ကားကို မှတ်ယူပါ၏: WHERE အပ်ကားသည် အမြင့်ပြင်းထားသော ခုံးသည့်ခုံးကို သတ်မှတ်ပါ၏။ WHERE အပ်ကားကို လွဲချောက်သွားလျှင် ခုံးခုံးအားလုံးကို အမြင့်ပြင်းထားပါ၏!

防止 SQL 注入

在 update 语句中,转义任何查询的值都是个好习惯。

此举是为了防止 SQL 注入,这是一种常见的网络黑客技术,可以破坏或滥用您的数据库。

mysql.connector 模块使用占位符 %s 来转义 delete 语句中的值:

实例

使用占位符 %s 方法来转义值:

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  passwd="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")

运行实例