更新表
能够使用“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, " 条记录已更新")