pyMySQL SQL語句傳參問題,單個參數(shù)或多個參數(shù)說明
在用pymysql操作數(shù)據(jù)庫的過程中,給sql語句傳參碰到了很多問題,網(wǎng)上傳參策略很多,這里推薦兩種
單個傳參用%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語句中動態(tài)傳遞參數(shù)(sql注入 || 傳參策略)
使用python 3連接Mysql實現(xiàn)自動化增刪查改庫內(nèi)數(shù)據(jù),由于項目原因很多的sql語句過于復雜,導致sql語句內(nèi)傳遞的參數(shù)過多而且容易變動,導致很多同學不知從何下手動態(tài)的傳遞參數(shù),有的采用比較笨的方法拼接sql,但是工作量太大,而且復雜的語句拼接時很容易出錯且不好維護,所以為大家整理了%s占位符的字典傳參的用法
import pymysql db = pymysql.connect(host="119.XX.XX.XX", port=3306, user="XXXXXXXX", passwd="XXXXXXXXXXXXX", db="XXXXXX", charset='utf8') # %s 占位符為需要傳遞的參數(shù),切記不要加''雙引號,要不然會報錯 sql = "SELECT totalusercount * 1.4 FROM mm_project_uv_outdoor WHERE poiid = %s AND currenttime = %s" cursor = db.cursor() # 以下為傳遞多個參數(shù)的用法 cursor.execute(sql,['B00140N5CS','2019-04-23']) # 傳遞單個參數(shù)時 cursor.execute(sql,'B00140N5CS') print(cursor.fetchall()) db.close()
運行后就能得到所查詢的數(shù)據(jù)了
最后建議大家多看官方的文檔或標準教程,這樣更有益學習
以上這篇pyMySQL SQL語句傳參問題,單個參數(shù)或多個參數(shù)說明就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- Python中操作mysql的pymysql模塊詳解
- Python中模塊pymysql查詢結果后如何獲取字段列表
- Python MySQL數(shù)據(jù)庫連接池組件pymysqlpool詳解
- 在python中使用pymysql往mysql數(shù)據(jù)庫中插入(insert)數(shù)據(jù)實例
- pymysql之cur.fetchall() 和cur.fetchone()用法詳解
- Python使用pymysql從MySQL數(shù)據(jù)庫中讀出數(shù)據(jù)的方法
- python使用pymysql實現(xiàn)操作mysql
- 詳解使用pymysql在python中對mysql的增刪改查操作(綜合)
- Python中pymysql 模塊的使用詳解
- 封裝一個python的pymysql操作類
相關文章
Python的CGIHTTPServer交互實現(xiàn)詳解
本篇文章主要給大家詳細分析了Python的CGIHTTPServer交互實現(xiàn)過程以及相關代碼分享,有興趣的參考學習下。2018-02-02python 將數(shù)據(jù)保存為excel的xls格式(實例講解)
下面小編就為大家分享一篇python 將數(shù)據(jù)保存為excel的xls格式(實例講解),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05python實現(xiàn)bitmap數(shù)據(jù)結構詳解
bitmap是很常用的數(shù)據(jù)結構,比如用于Bloom Filter中,下面是使用python實現(xiàn)bitmap數(shù)據(jù)結構的代碼講解,需要的朋友可以參考下2014-02-02Django 解決阿里云部署同步數(shù)據(jù)庫報錯的問題
這篇文章主要介紹了Django 解決阿里云部署同步數(shù)據(jù)庫報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05