如何使用pymysql模塊?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),麥蓋提企業(yè)網(wǎng)站建設(shè),麥蓋提品牌網(wǎng)站建設(shè),網(wǎng)站定制,麥蓋提網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,麥蓋提網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。pymysql的基本使用:
import pymysql conn = pymysql.connect( user = 'root', password = '123', host = '127.0.0.1', # ip地址 port = 3306, # 端口 charset = 'utf8', database = 'day36_1' ) cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)# 產(chǎn)生游標(biāo)對象 # cursor=pymysql.cursors.DictCursor 將查詢出來的結(jié)果制成字典的形式返回 sql = "select * from userinto" res = cursor.execute(sql) #執(zhí)行sql語句 res = cursor.fetchone() # 打印一條數(shù)據(jù) res = cursor.fetchall() # 可以打印里面的所有數(shù)據(jù) res = cursor.fetchmany(2) #制定獲取幾條數(shù)據(jù),如果數(shù)字超了也不報錯 print(res) cursor.scroll(2, 'relative') #相對移動 , 基于指針?biāo)谖恢? 往后偏移 cursor.scroll(3, 'absolute') #絕對移動,基于起始位置往后偏移 print(cursor.fetchall())
我們可以通過python導(dǎo)入模塊來連接數(shù)據(jù)庫,進(jìn)行登陸注冊功能,在使用時sql會遇到注入問題
sql注入問題 利用特殊符號和注釋語法 巧妙的繞過真正的sql校驗(yàn),是用戶數(shù)據(jù)不安全
關(guān)鍵性的數(shù)據(jù) 不要自己手動去拼接 而是交由execute幫你去做拼接
import pymysql conn = pymysql.connect( user = 'root' , password = '123', host = '127.0.0.1', port = 3306, database = 'day36_1', charset = 'utf8' ) cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) #獲取用戶名和密碼,然后取數(shù)據(jù)庫中校驗(yàn) username = input('username>>>:').strip() password = input('password>>>:').strip() sql = "select * from userinto where name=%s and password=%s" print(sql) cursor.execute(sql, (username, password)) #交由execute幫你去做拼接,解決注入問題 res = cursor.fetchall() if res: print(res) else: print('username or password error!')
我們也可以利用pycharm來操作數(shù)據(jù)庫文件的增刪改查!
針對增 刪 改操作 執(zhí)行重要程度偏高
你如果真想操作 必須有一步確認(rèn)操作(commit)
import pymysql conn = pymysql.connect( user = 'root', passwd = '123456', db = 'day36', host = '127.0.0.1', port = 3306, charset = 'utf8', autocommit = True # 自動提交確認(rèn) ) cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) # #查: 獲取用戶輸入的用戶名和密碼 然后取數(shù)據(jù)庫中校驗(yàn) # username = input('username>>>:').strip() # password = input('password>>>:').strip() # # sql = "select * from userinfo where name='%s' and password= '%s'"%(username,password) # sql = "select * from userinfo where name=%s and password= %s" # print(sql) # 增 sql = "insert into userinfo(name,password,dep_id) values('jason',789,1)" # 改 # sql = "update userinfo set name='egondsb' where id = 6" # 刪除 # sql = "delete from userinfo where id= 1" res = cursor.execute(sql) # conn.commit() # 確認(rèn)當(dāng)前操作 真正的同步到數(shù)據(jù)庫 print(res)
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司的支持。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、網(wǎng)站設(shè)計器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
文章題目:如何使用pymysql模塊-創(chuàng)新互聯(lián)
分享路徑:http://m.rwnh.cn/article46/cegchg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、域名注冊、網(wǎng)站導(dǎo)航、網(wǎng)站營銷、商城網(wǎng)站、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容