python中mysql更新字段中传参
2021/4/30 19:27:10
本文主要是介绍python中mysql更新字段中传参,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
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 模块有方法可以转义查询值:
示例
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, " 条记录已更新")
def updateFields(self,id,key,value):
self.cur=self.conn.cursor()
sql=None
if type(value)==type(""):
sql=“update goods set %s=’%s’ where goods_id=’%d’” % (key,value,id)
if type(value)==type(1.1):
sql=“update goods set %s=’%f’ where goods_id=’%d’” % (key,value,id)
if type(value)==type(1):
sql=“update goods set %s=’%d’ where goods_id=’%d’” % (key,value,id)
print sql
try:
self.cur.execute(sql)
self.conn.commit()
logger.info(“更新goods表成功”)
except:
self.conn.rollback()
logger.error(“更新goods表失败”)
self.cur.close()
https://blog.csdn.net/gurenyuan123/article/details/50973565
https://blog.csdn.net/stay_foolish12/article/details/109363537
这篇关于python中mysql更新字段中传参的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解
- 2024-12-07MySQL分库分表入门指南
- 2024-12-07MySQL慢查询入门:快速掌握性能优化技巧
- 2024-12-07MySQL入门:新手必读的简单教程
- 2024-12-07MySQL入门:从零开始学习MySQL数据库
- 2024-12-07MySQL索引入门:新手快速掌握MySQL索引技巧
- 2024-12-06BinLog学习:MySQL数据库BinLog入门教程
- 2024-12-06Binlog学习:MySQL数据库的日志管理入门教程