亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術(shù)文章
文章詳情頁

Python MySQLdb 執(zhí)行sql語句時的參數(shù)傳遞方式

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

使用MySQLdb連接數(shù)據(jù)庫執(zhí)行sql語句時,有以下幾種傳遞參數(shù)的方法。

1.不傳遞參數(shù)

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.傳遞參數(shù)

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

cursor.execute(sql, color)

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

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

與第一種寫法,有什么區(qū)別呢?

兩者區(qū)別是對變量的解析:

第一種寫法,使用百分號%, 是用Python解釋器對%s執(zhí)行相應(yīng)的替換。這種方法存在漏洞,有些時候不能正常解析,比如包含某些特殊字符,甚至?xí)斐勺⑷牍舻娘L(fēng)險。

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

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

3.使用字典dict類型傳遞參數(shù)

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

這種方式,傳遞的參數(shù)對應(yīng)關(guān)系比較清晰。尤其是參數(shù)比較多時,使用字典,可以保證傳遞參數(shù)的順序正確。

補充知識:python自動化之pymysql庫使用變量向SQL語句中動態(tài)傳遞參數(shù)(sql注入 || 傳參策略)

使用python 3連接Mysql實現(xiàn)自動化增刪查改庫內(nèi)數(shù)據(jù),由于項目原因很多的sql語句過于復(fù)雜,導(dǎo)致sql語句內(nèi)傳遞的參數(shù)過多而且容易變動,導(dǎo)致很多同學(xué)不知從何下手動態(tài)的傳遞參數(shù),有的采用比較笨的方法拼接sql,但是工作量太大,而且復(fù)雜的語句拼接時很容易出錯且不好維護(hù),所以為大家整理了%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ù)了

Python MySQLdb 執(zhí)行sql語句時的參數(shù)傳遞方式

最后建議大家多看官方的文檔或標(biāo)準(zhǔn)教程,這樣更有益學(xué)習(xí)

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

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产黄色大片网站 | 美女视频一区二区三区在线 | 国产精品一区二区手机在线观看 | 国产亚洲一区二区三区在线观看 | 欧美巨大video粗暴 | 另类亚洲孕妇分娩网址 | 国产精选莉莉私人影院 | 久久福利青草免费精品 | 国产在线黄 | 久久国产精彩视频 | 91久久香蕉国产线看观看软件 | 亚洲乱视频 | 久久国产精品久久久久久久久久 | 日本一区二区三区在线 视频观看免费 | 91免费看片 | 成年人三级视频 | 欧美一级二级三级视频 | 国产欧美成人xxx视频 | 天天干亚洲 | 欧美成人性生活视频 | 最新国产毛片 | 九九黄色影院 | 国产三级毛片视频 | 成人香蕉xxxxxxx | 国产成人综合网在线观看 | 国产成人精品免费视频大全办公室 | 一级做a爱片久久毛片 | 中文字幕一区二区在线观看 | 精品国产区一区二区三区在线观看 | 亚洲精品一区专区 | 最新国产精品视频免费看 | 在线综合+亚洲+欧美中文字幕 | 一级做性色a爱片久久片 | 免费的成人a视频在线观看 免费的毛片 | 亚洲国产大片 | 久久久久久久岛国免费观看 | 成年女人毛片免费观看97 | 久久久亚洲欧美综合 | 亚洲乱码一二三四五六区 | 国产成人一区二区三区视频免费 | 国产成人久久精品麻豆二区 |