Python MySQL Update



章節


更新表

可以使用“UPDATE”語句,更新表格內的現有記錄:

示例

將地址欄由“Valley 345”改寫為“Canyoun 123”:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="你的用戶名",
  passwd="你的密碼",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "UPDATE customers SET address = 'Canyon 123' WHERE address = 'Valley 345'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, " 條記錄已更新")

注意: 數據庫修改后,需要使用mydb.commit()語句提交,不提交,修改不會生效。

注意UPDATE語句中的WHERE子句: WHERE子句指定應該更新哪些記錄。如果省略WHERE子句,將更新所有記錄!

防止SQL注入

在update語句中,為了防止SQL注入,通常應該轉義查詢值。

SQL注入是一種常見的web黑客技術,用於破壞或誤用數據庫。

mysql.connector 模塊有方法可以轉義查詢值:

示例

使用占位符%s方法轉義查詢值:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="你的用戶名",
  passwd="你的密碼",
  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, " 條記錄已更新")


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM