亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python MySQLdb 執行sql語句時的參數傳遞方式

瀏覽:15日期:2022-08-04 13:16:46

使用MySQLdb連接數據庫執行sql語句時,有以下幾種傳遞參數的方法。

1.不傳遞參數

conn = MySQLdb.connect(user='root',passwd='123456',host='192.168.101.23',db='cmdb')orange_id = 98sql = 'select * from orange where id=%s' % orange_idcursor = conn.cursor(sql)cursor.execute()

2.傳遞參數

color = 'yellow'sql = 'select * from orange where color = %s'

cursor.execute(sql, color)

注意此處的占位符是%s,無論是字符串、數字或者其他類型,都是這個占位符。

另外, %s不能加引號,如’%s’, 這是錯誤的寫法。

與第一種寫法,有什么區別呢?

兩者區別是對變量的解析:

第一種寫法,使用百分號%, 是用Python解釋器對%s執行相應的替換。這種方法存在漏洞,有些時候不能正常解析,比如包含某些特殊字符,甚至會造成注入攻擊的風險。

第二種,變量是作為execute的參數傳入的,由MySQLdb的內置方法把變量解釋成合適的內容。

一般情況下,建議使用第二種方法,把變量作為參數傳遞給execute。

3.使用字典dict類型傳遞參數

sql = 'select * from orange where %(color)s, %(weight)s'values = {'color': 'yellow', 'weight': 30}cursor.execute(sql, values)

這種方式,傳遞的參數對應關系比較清晰。尤其是參數比較多時,使用字典,可以保證傳遞參數的順序正確。

補充知識: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()

運行后就能得到所查詢的數據了

Python MySQLdb 執行sql語句時的參數傳遞方式

最后建議大家多看官方的文檔或標準教程,這樣更有益學習

以上這篇Python MySQLdb 執行sql語句時的參數傳遞方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产伦一区二区三区高清 | 性夜黄 a 爽免费看 性性影院在线观看 | 国产一区 在线视频 | 草草视频免费在线观看 | 在线观看黄色影视 | 欧美成人做性视频在线播放 | 欧美+日本+国产+在线观看 | 欧洲男女啪啪免费观看 | 国产1024一区二区你懂的 | 一级毛片一 | 成人影院在线观看kkk4444 | 久久毛片免费看 | 女人牲交视频一级毛片 | 青草久久精品亚洲综合专区 | 2020亚洲欧美日韩在线观看 | 国产精品成人h视频 | 国产欧美精品一区二区色综合 | 亚洲精品女同一区二区三区 | 女性潮高免费高清视频 | 亚洲精品一区henhen色 | 中文国产成人精品久久水 | 成人午夜在线观看国产 | 1314亚洲人成网站在线观看 | 公又粗又长又大又深好爽日本 | 国产香蕉视频在线 | 激情三级hd中文字幕 | 一级毛片成人免费看a | 亚洲一逼| 国产黄的网站免费 | 三级三级三级网站网址 | 婷婷综合在线 | 非洲特黄一级毛片高清视频 | 看片在线观看 | 欧美在线一区二区三区不卡 | 2020国产微拍精品一区二区 | 国产免费高清福利拍拍拍 | 国内自拍一区 | 国产美女一级高清免费观看 | 日韩精品亚洲人成在线播放 | 国产精品自在欧美一区 | 精品成人在线观看 |