更新表
能夠使用「UPDATE」語句,更新表格內的現有記錄:python
示例mysql
將地址欄由「Valley 345」改寫爲「Canyoun 123」:web
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()
語句提交,不提交,修改不會生效。sql
注意UPDATE語句中的WHERE子句: WHERE子句指定應該更新哪些記錄。若是省略WHERE子句,將更新全部記錄!數據庫
防止SQL注入
在update語句中,爲了防止SQL注入,一般應該轉義查詢值。spa
SQL注入是一種常見的web黑客技術,用於破壞或誤用數據庫。code
mysql.connector 模塊有方法能夠轉義查詢值:it
示例class
使用佔位符%s
方法轉義查詢值:import
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, " 條記錄已更新")