python連接數(shù)據(jù)庫(kù)后通過(guò)占位符添加數(shù)據(jù)
在SQL語(yǔ)句中如果定義字符串,則字符串必須使用“'”就是單引號(hào)進(jìn)行聲明,但是如果現(xiàn)在所操作的數(shù)據(jù)庫(kù)本身含有“'”單引號(hào),就會(huì)造成語(yǔ)法錯(cuò)誤,此時(shí)的數(shù)據(jù)也不能成功保存到數(shù)據(jù)庫(kù)中。為了解決這類問(wèn)題,在pymysql中支持對(duì)占位符的處理,開發(fā)者需要在SQL中使用“%”定義占位符,在使用excute()方法執(zhí)行時(shí)對(duì)占位符的數(shù)據(jù)進(jìn)行填充即可。
比如數(shù)據(jù)庫(kù)表中的字段 mr'yootk這個(gè)本身含有“'”單引號(hào),所以執(zhí)行時(shí)語(yǔ)法錯(cuò)誤
#使用占位符方式添加數(shù)據(jù)
#coding utf-8
import pymysql,traceback
SQL = "insert into user (name,age,birthday,salary,note)"\
"values (%s,%s,%s,%s,%s)"
def main():
try:
name = "mr'Yootk"
age = 18
birthday = '2013-09-26'
salary =9600.23
note = "www.wangyi.com"
conn = pymysql.connect(
host='10.139.7.39',
port=3306,
user='root',
passwd='Bccdr@123456',
database='yootk',
charset='utf8')
cmd = conn.cursor()
cmd.execute(query=SQL,args=[name,age,birthday,salary,note])
conn.commit()
print("更新影響的數(shù)據(jù)行數(shù): %s" % cmd.rowcount)
print("最后一次增長(zhǎng)ID: %s" % cmd.lastrowid)
except Exception:
print("處理異常: " + traceback.format_exc())
finally:
conn.close()
if __name__ == "__main__":
main()

到此這篇關(guān)于python連接數(shù)據(jù)庫(kù)后通過(guò)占位符添加數(shù)據(jù)的文章就介紹到這了,更多相關(guān)python占位符添加數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python3.6連接Oracle數(shù)據(jù)庫(kù)的方法詳解
這篇文章主要介紹了Python3.6連接Oracle數(shù)據(jù)庫(kù)的方法,較為詳細(xì)的分析了cx_Oracle模塊安裝及Python3.6使用cx_Oracle模塊操作Oracle數(shù)據(jù)庫(kù)的具體操作步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2018-05-05
python模塊hashlib(加密服務(wù))知識(shí)點(diǎn)講解
在本篇文章里小編給大家分享的是關(guān)于python模塊hashlib(加密服務(wù))知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2019-11-11
python -m pip install 和 pip in
python -m pip install <package> 使用了 -m 參數(shù)來(lái)確保以 Python 模塊的形式運(yùn)行 pip,適用于確保在不同的環(huán)境中正確使用 pip,這篇文章主要介紹了python -m pip install 和 pip install 的區(qū)別,需要的朋友可以參考下2023-07-07
python數(shù)據(jù)預(yù)處理方式 :數(shù)據(jù)降維
今天小編就為大家分享一篇python數(shù)據(jù)預(yù)處理方式 :數(shù)據(jù)降維,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02

