pyMySQL SQL語(yǔ)句傳參問(wèn)題,單個(gè)參數(shù)或多個(gè)參數(shù)說(shuō)明
在用pymysql操作數(shù)據(jù)庫(kù)的過(guò)程中,給sql語(yǔ)句傳參碰到了很多問(wèn)題,網(wǎng)上傳參策略很多,這里推薦兩種
單個(gè)傳參用%s,寫起來(lái)比較簡(jiǎn)單:
field = '-' sql_talk="UPDATE cnp.Test set a='' where b='%s'" cursor.execute(sql_talk % field) db.commit()
多個(gè)傳參用{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()
補(bǔ)充知識(shí):python自動(dòng)化之pymysql庫(kù)使用變量向SQL語(yǔ)句中動(dòng)態(tài)傳遞參數(shù)(sql注入 || 傳參策略)
使用python 3連接Mysql實(shí)現(xiàn)自動(dòng)化增刪查改庫(kù)內(nèi)數(shù)據(jù),由于項(xiàng)目原因很多的sql語(yǔ)句過(guò)于復(fù)雜,導(dǎo)致sql語(yǔ)句內(nèi)傳遞的參數(shù)過(guò)多而且容易變動(dòng),導(dǎo)致很多同學(xué)不知從何下手動(dòng)態(tài)的傳遞參數(shù),有的采用比較笨的方法拼接sql,但是工作量太大,而且復(fù)雜的語(yǔ)句拼接時(shí)很容易出錯(cuò)且不好維護(hù),所以為大家整理了%s占位符的字典傳參的用法
import pymysql
db = pymysql.connect(host="119.XX.XX.XX",
port=3306,
user="XXXXXXXX",
passwd="XXXXXXXXXXXXX",
db="XXXXXX",
charset='utf8')
# %s 占位符為需要傳遞的參數(shù),切記不要加''雙引號(hào),要不然會(huì)報(bào)錯(cuò)
sql = "SELECT totalusercount * 1.4 FROM mm_project_uv_outdoor WHERE poiid = %s AND currenttime = %s"
cursor = db.cursor()
# 以下為傳遞多個(gè)參數(shù)的用法
cursor.execute(sql,['B00140N5CS','2019-04-23'])
# 傳遞單個(gè)參數(shù)時(shí) cursor.execute(sql,'B00140N5CS')
print(cursor.fetchall())
db.close()
運(yùn)行后就能得到所查詢的數(shù)據(jù)了

最后建議大家多看官方的文檔或標(biāo)準(zhǔn)教程,這樣更有益學(xué)習(xí)
以上這篇pyMySQL SQL語(yǔ)句傳參問(wèn)題,單個(gè)參數(shù)或多個(gè)參數(shù)說(shuō)明就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Python中操作mysql的pymysql模塊詳解
- Python中模塊pymysql查詢結(jié)果后如何獲取字段列表
- Python MySQL數(shù)據(jù)庫(kù)連接池組件pymysqlpool詳解
- 在python中使用pymysql往mysql數(shù)據(jù)庫(kù)中插入(insert)數(shù)據(jù)實(shí)例
- pymysql之cur.fetchall() 和cur.fetchone()用法詳解
- Python使用pymysql從MySQL數(shù)據(jù)庫(kù)中讀出數(shù)據(jù)的方法
- python使用pymysql實(shí)現(xiàn)操作mysql
- 詳解使用pymysql在python中對(duì)mysql的增刪改查操作(綜合)
- Python中pymysql 模塊的使用詳解
- 封裝一個(gè)python的pymysql操作類
相關(guān)文章
TensorFlow Saver:保存和讀取模型參數(shù).ckpt實(shí)例
今天小編就為大家分享一篇TensorFlow Saver:保存和讀取模型參數(shù).ckpt實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
使用Python和XML實(shí)現(xiàn)文件復(fù)制工具的完整代碼
在本篇博客中,我們將學(xué)習(xí)如何使用 wxPython 構(gòu)建一個(gè)簡(jiǎn)單的文件復(fù)制工具,并將文件路徑和目標(biāo)目錄的配置信息保存到 XML 文件中,通過(guò)這種方式,我們可以在下次運(yùn)行程序時(shí)輕松加載之前保存的配置,需要的朋友可以參考下2024-08-08
Python使用PyQt5實(shí)現(xiàn)與DeepSeek聊天的圖形化小軟件
在?PyQt5?中,菜單欄(QMenuBar)、工具欄(QToolBar)和狀態(tài)欄(QStatusBar)是?QMainWindow?提供的標(biāo)準(zhǔn)控件,用于幫助用戶更好地與應(yīng)用程序交互,所以本文給大家介紹了Python使用PyQt5實(shí)現(xiàn)與DeepSeek聊天的圖形化小軟件,需要的朋友可以參考下2025-03-03
python3中獲取文件當(dāng)前絕對(duì)路徑的兩種方法
下面小編就為大家分享一篇python3中獲取文件當(dāng)前絕對(duì)路徑的兩種方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
python數(shù)據(jù)庫(kù)PooledDB連接池初始化使用示例
這篇文章主要為大家介紹了python數(shù)據(jù)庫(kù)PooledDB連接池初始化使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
python處理emoji表情(兩個(gè)函數(shù)解決兩者之間的聯(lián)系)
這篇文章主要介紹了python處理emoji表情,主要通過(guò)兩個(gè)函數(shù)解決兩者之間的聯(lián)系,本文通過(guò)實(shí)例代碼給大家介紹的非常完美,對(duì)python emoji表情的相關(guān)知識(shí)感興趣的朋友一起看看吧2021-05-05

