pyMySQL SQL语句传参问题,单个参数或多个参数说明


Posted in Python onJune 06, 2020

在用pymysql操作数据库的过程中,给sql语句传参碰到了很多问题,网上传参策略很多,这里推荐两种

单个传参用%s,写起来比较简单:

field = '-'
sql_talk="UPDATE cnp.Test set a='' where b='%s'"
cursor.execute(sql_talk % field)
db.commit()

多个传参用{0}占位符:

field = '-'
a = 'code'
sql_talk="UPDATE cnp.Test set {0}='' where business_registration_code='{1}'".format(a,field)

cursor.execute(sql_talk)
db.commit()

补充知识:python自动化之pymysql库使用变量向SQL语句中动态传递参数(sql注入 || 传参策略)

使用python 3连接Mysql实现自动化增删查改库内数据,由于项目原因很多的sql语句过于复杂,导致sql语句内传递的参数过多而且容易变动,导致很多同学不知从何下手动态的传递参数,有的采用比较笨的方法拼接sql,但是工作量太大,而且复杂的语句拼接时很容易出错且不好维护,所以为大家整理了%s占位符的字典传参的用法

import pymysql
db = pymysql.connect(host="119.XX.XX.XX",
            port=3306,
            user="XXXXXXXX",
            passwd="XXXXXXXXXXXXX",
            db="XXXXXX",
            charset='utf8')
 
# %s 占位符为需要传递的参数,切记不要加''双引号,要不然会报错
sql = "SELECT totalusercount * 1.4 FROM mm_project_uv_outdoor WHERE poiid = %s AND currenttime = %s"
 
cursor = db.cursor()
# 以下为传递多个参数的用法
cursor.execute(sql,['B00140N5CS','2019-04-23'])
# 传递单个参数时 cursor.execute(sql,'B00140N5CS')
print(cursor.fetchall())
db.close()

运行后就能得到所查询的数据了

pyMySQL SQL语句传参问题,单个参数或多个参数说明

最后建议大家多看官方的文档或标准教程,这样更有益学习

以上这篇pyMySQL SQL语句传参问题,单个参数或多个参数说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python的Django框架中获取单个对象数据的简单方法
Jul 17 Python
python中pandas.DataFrame排除特定行方法示例
Mar 12 Python
python中的随机函数random的用法示例
Jan 27 Python
Python如何爬取微信公众号文章和评论(基于 Fiddler 抓包分析)
Jun 28 Python
用python wxpy管理微信公众号并利用微信获取自己的开源数据
Jul 30 Python
Tensorflow 实现分批量读取数据
Jan 04 Python
新年福利来一波之Python轻松集齐五福(demo)
Jan 20 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
Apr 27 Python
django 模型字段设置默认值代码
Jul 15 Python
python常量折叠基础知识点讲解
Feb 28 Python
python tkinter实现定时关机
Apr 21 Python
Python实现聚类K-means算法详解
Jul 15 Python
python 解决mysql where in 对列表(list,,array)问题
Jun 06 #Python
在python中使用pyspark读写Hive数据操作
Jun 06 #Python
使用Python构造hive insert语句说明
Jun 06 #Python
Python通过kerberos安全认证操作kafka方式
Jun 06 #Python
pandas分批读取大数据集教程
Jun 06 #Python
python使用hdfs3模块对hdfs进行操作详解
Jun 06 #Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
Jun 06 #Python
You might like
德生PL450的电路分析和低放电路的改进办法
2021/03/02 无线电
php下删除字符串中HTML标签的函数
2008/08/27 PHP
Yii中Model(模型)的创建及使用方法
2015/12/28 PHP
thinkPHP实现将excel导入到数据库中的方法
2016/04/22 PHP
jQuery对表单的操作代码集合
2011/04/06 Javascript
利用js实现前台动态添加文本框,后台获取文本框内容(示例代码)
2013/11/25 Javascript
JavaScript删除指定子元素代码实例
2015/01/13 Javascript
jQuery原型属性和原型方法详解
2015/07/07 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
js replace 全局替换的操作方法
2018/06/12 Javascript
解决vue props 拿不到值的问题
2018/09/11 Javascript
微信小程序如何刷新当前界面的实现方法
2019/06/07 Javascript
如何基于JavaScript判断图片是否加载完成
2019/12/28 Javascript
微信小程序实现音频文件播放进度的实例代码
2020/03/02 Javascript
[43:48]Ti4正赛第一天 VG vs NEWBEE 2
2014/07/19 DOTA
Python struct.unpack
2008/09/06 Python
python实现从一组颜色中找出与给定颜色最接近颜色的方法
2015/03/19 Python
python读取TXT到数组及列表去重后按原来顺序排序的方法
2015/06/26 Python
使用Python实现BT种子和磁力链接的相互转换
2015/11/09 Python
Linux下将Python的Django项目部署到Apache服务器
2015/12/24 Python
Python输出各行命令详解
2018/02/01 Python
python之Flask实现简单登录功能的示例代码
2018/12/24 Python
python 的 scapy库,实现网卡收发包的例子
2019/07/23 Python
Python优秀开源项目Rich源码解析的流程分析
2020/07/06 Python
python实现代码审查自动回复消息
2021/02/01 Python
英国最大的香水商店:The Fragrance Shop
2018/07/06 全球购物
Gretna Green中文官网:苏格兰格林小镇
2019/10/16 全球购物
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
敬老文明号事迹材料
2014/01/16 职场文书
幼儿教师培训感言
2014/03/08 职场文书
文明市民先进事迹
2014/05/15 职场文书
升学宴演讲稿
2014/09/01 职场文书
病房管理制度范本
2015/08/06 职场文书
python3 sqlite3限制条件查询的操作
2021/04/07 Python
Python内置数据结构列表与元组示例详解
2021/08/04 Python
Java 超详细讲解hashCode方法
2022/04/07 Java/Android