利用python中pymysql操作MySQL數(shù)據(jù)庫(kù)的新手指南
一. pymysql介紹
pymysql 是在 Python3.x 版本中用于連接和操作 MySQL 服務(wù)器的一個(gè)庫(kù).
引入方式: pip install pymysql
pip工具是python的一個(gè)模塊,因此在使用pip工具安裝pymysql模塊之前,首先確定python和pip工具都能正常工作
二. 連接數(shù)據(jù)庫(kù)的完整流程
1. 引入pymysql模塊
import pymysql # 引入第三方庫(kù)pymysql
2. 創(chuàng)建連接對(duì)象
import pymysql cnn = pymysql.connect( user="user", # 用戶(hù)名 password="password", # 密碼 port=端口號(hào), # 默認(rèn)為3306,且此處為整數(shù)類(lèi)型 database="數(shù)據(jù)庫(kù)名", host="連接IP地址", charset="utf8")
3. 使用連接對(duì)象創(chuàng)建游標(biāo)對(duì)象
1. 游標(biāo)對(duì)象是通過(guò)鏈接對(duì)象進(jìn)行創(chuàng)建的 2. 游標(biāo)展示數(shù)據(jù)的四種方式: 1. Cursor ---> 默認(rèn)使用, 元組套元組 2. SSCursor ---> 元組套元組的方式的生成器(優(yōu)雅的迭代器) 3. Dictcursor ---> 列表套字典的方式 4. SSDictcursor ---> 列表套字典的方式的生成器 3. 創(chuàng)建語(yǔ)法(以最常用的列表套字典的形式舉例) cursor = database.cursor(cursor=pymysql.cursors.DictCursor # cursor為游標(biāo)對(duì)象名, 可按自己習(xí)慣自定義名字
4. 準(zhǔn)備需要使用的sql語(yǔ)句
按照自己的需求準(zhǔn)備sql語(yǔ)句, 不熟悉的同學(xué)可以點(diǎn)擊下方鏈接, 復(fù)習(xí)我上期寫(xiě)的MySQL基礎(chǔ)入門(mén)課程.
5. 使用游標(biāo)對(duì)象執(zhí)行sql語(yǔ)句(如果是數(shù)據(jù)修改的操作,會(huì)返回受影響的行數(shù))
# 執(zhí)行語(yǔ)句比較簡(jiǎn)單, 就只寫(xiě)了這一個(gè) cursor.execute(SQL語(yǔ)句)
6. 如果執(zhí)行語(yǔ)句是查詢(xún)操作,需要使用游標(biāo)對(duì)象獲取查詢(xún)結(jié)果
1. 獲取結(jié)果的語(yǔ)法: 1. 游標(biāo)對(duì)象.fetchall() ---> 返回查詢(xún)到的所有數(shù)據(jù) 2. 游標(biāo)對(duì)象.fetchone() ---> 返回查詢(xún)到的一條記錄 3. 游標(biāo)對(duì)象.fetchmany(記錄數(shù)) ---> 返回查詢(xún)到的指定記錄數(shù) 2. 切換數(shù)據(jù)庫(kù)語(yǔ)法: 1. 由鏈接對(duì)象取操作切換數(shù)據(jù)庫(kù) 2. 鏈接對(duì)象.select_db("數(shù)據(jù)庫(kù)名) 3. 具體語(yǔ)句(用一個(gè)變量data接受存儲(chǔ)數(shù)據(jù)) data = cursor.fetchall()
7. 關(guān)閉游標(biāo)對(duì)象
游標(biāo)對(duì)象.close()
8. 關(guān)閉連接對(duì)象
連接對(duì)象.close()
三. 完整的簡(jiǎn)易源碼
# 1. 引入模塊 import pymysql # 2. 連接數(shù)據(jù)庫(kù) cnn = pymysql.connect( user="root", password="******", port=3306, database="mytest", host="localhost", charset="utf8" ) # 3. 創(chuàng)建游標(biāo)對(duì)象 my_cursor = cnn.cursor(cursor=pymysql.cursors.DictCursor) # 4. SQL語(yǔ)句 my_sql = "select * from student" # 5. 執(zhí)行SQL ---> 通過(guò)游標(biāo)對(duì)象執(zhí)行 my_cursor.execute(my_sql) # 6. 查看結(jié)果 data = my_cursor.fetchall() # 7. 關(guān)閉連接 my_cursor.close() database.close() # 打印獲得的數(shù)據(jù), 檢查執(zhí)行是否正確 print(data)
總結(jié)
到此這篇關(guān)于利用python中pymysql操作MySQL數(shù)據(jù)庫(kù)的文章就介紹到這了,更多相關(guān)python pymysql操作MySQL數(shù)據(jù)庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python基于ssh遠(yuǎn)程連接Mysql數(shù)據(jù)庫(kù)操作
- python pymysql鏈接數(shù)據(jù)庫(kù)查詢(xún)結(jié)果轉(zhuǎn)為Dataframe實(shí)例
- python中pymysql的executemany使用方式
- python使用pymysql操作MySQL錯(cuò)誤代碼1054和1064處理方式
- python?實(shí)現(xiàn)?pymysql?數(shù)據(jù)庫(kù)操作方法
- Python pymysql連接數(shù)據(jù)庫(kù)并將查詢(xún)結(jié)果轉(zhuǎn)化為Pandas dataframe
相關(guān)文章
python+requests實(shí)現(xiàn)接口測(cè)試的完整步驟
這篇文章主要給大家介紹了關(guān)于python+requests實(shí)現(xiàn)接口測(cè)試的完整步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10Py之pycocotools庫(kù)的簡(jiǎn)介、安裝、使用方法及說(shuō)明
這篇文章主要介紹了Py之pycocotools庫(kù)的簡(jiǎn)介、安裝、使用方法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02用TensorFlow實(shí)現(xiàn)多類(lèi)支持向量機(jī)的示例代碼
這篇文章主要介紹了用TensorFlow實(shí)現(xiàn)多類(lèi)支持向量機(jī)的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04Python中無(wú)限元素列表的實(shí)現(xiàn)方法
這篇文章主要介紹了Python中無(wú)限元素列表的實(shí)現(xiàn)方法,很實(shí)用的功能,需要的朋友可以參考下2014-08-08python實(shí)現(xiàn)從字符串中找出字符1的位置以及個(gè)數(shù)的方法
這篇文章主要介紹了python實(shí)現(xiàn)從字符串中找出字符1的位置以及個(gè)數(shù)的方法,對(duì)于Python字符串操作的學(xué)習(xí)有一定的幫助與借鑒作用,需要的朋友可以參考下2014-08-08python統(tǒng)計(jì)指定目錄內(nèi)文件的代碼行數(shù)
這篇文章主要介紹了python統(tǒng)計(jì)指定目錄內(nèi)文件的代碼行數(shù)2019-09-09Python+pandas計(jì)算數(shù)據(jù)相關(guān)系數(shù)的實(shí)例
今天小編就為大家分享一篇Python+pandas計(jì)算數(shù)據(jù)相關(guān)系數(shù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07python利用線程實(shí)現(xiàn)多任務(wù)
這篇文章主要介紹了python利用線程實(shí)現(xiàn)多任務(wù),幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2020-09-09