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

 更新时间:2020年06月06日 14:50:00   作者:计算机动物  
这篇文章主要介绍了pyMySQL SQL语句传参问题,单个参数或多个参数说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在用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语句传参问题,单个参数或多个参数说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python接口自动化系列之unittest结合ddt的使用教程详解

    Python接口自动化系列之unittest结合ddt的使用教程详解

    这篇文章主要介绍了Python接口自动化系列之unittest结合ddt的使用教程详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • python实现备份目录的方法

    python实现备份目录的方法

    这篇文章主要介绍了python实现备份目录的方法,实例总结了Python实现备份目录的三种常用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • python基础之函数和面向对象详解

    python基础之函数和面向对象详解

    这篇文章主要为大家详细介绍了python的函数和面向对象,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • Python实现的简单排列组合算法示例

    Python实现的简单排列组合算法示例

    这篇文章主要介绍了Python实现的简单排列组合算法,涉及Python使用itertools库进行排列组合运算相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • python基础教程之面向对象的一些概念

    python基础教程之面向对象的一些概念

    这篇文章主要介绍了python基础教程之面向对象的一些概念,面向对象是一种代码组织方式,让代码复用最大化,需要的朋友可以参考下
    2014-08-08
  • Python中的socket网络模块介绍

    Python中的socket网络模块介绍

    这篇文章主要介绍了Python中的socket网络模块介绍,Python 中,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-07-07
  • Python 使用PyQt5 完成选择文件或目录的对话框方法

    Python 使用PyQt5 完成选择文件或目录的对话框方法

    今天小编就为大家分享一篇Python 使用PyQt5 完成选择文件或目录的对话框方法。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 介绍Python中几个常用的类方法

    介绍Python中几个常用的类方法

    这篇文章主要介绍了介绍Python中几个常用的类方法,大都在自定义类的时候经常需要用到,这些是Python学习中的基本功,需要的朋友可以参考下
    2015-04-04
  • Python2.7+pytesser实现简单验证码的识别方法

    Python2.7+pytesser实现简单验证码的识别方法

    这篇文章主要介绍了Python2.7+pytesser实现简单验证码的识别方法,简单分析了pytesser的安装及Python2.7环境下实现验证码识别的相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • Httprunner简介、安装及基本使用教程

    Httprunner简介、安装及基本使用教程

    httprunner是一款面向 HTTP(S) 协议的通用测试框架。只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求,本文给大家介绍Httprunner安装使用教程,感兴趣的朋友一起看看吧
    2022-02-02

最新评论