Python實(shí)現(xiàn)MySQL操作的方法小結(jié)【安裝,連接,增刪改查等】
本文實(shí)例講述了Python實(shí)現(xiàn)MySQL操作的方法。分享給大家供大家參考,具體如下:
1. 安裝MySQLdb.從網(wǎng)站下載Mysql for python 的package 注意有32位和64位之分.
2. 安裝完成之后從Python IDLE 導(dǎo)入MySQLdb
>>>import MySQLdb
3. 新建一個(gè)數(shù)據(jù)庫(kù)連接:
>>>conn =MySQLdb.connect(host = '127.0.0.1',user= 'root',passwd='123456',db='test',port=3306,charset='utf8') >>>
注意:其中的hsot 參數(shù)的值也可寫為host = "localhost", passwd 切勿寫成了password, port 參數(shù)需要int類型,上面的3306不要加引號(hào). charset要和數(shù)據(jù)庫(kù)的字符集相同.
4. 創(chuàng)建游標(biāo):
>>>cur = conn.cursor() >>>
5. 執(zhí)行插入單條數(shù)據(jù)命令
>>>cur.execute("insert into msg (title,name,content) values ('python','zz','test mysql insert')") 1L #返回受影響的記錄條數(shù). >>>conn.commit() #需要提交事務(wù)插入才會(huì)生效. >>>
6. 利用參數(shù)插入多條數(shù)據(jù)命令
>>>sql = "insert into msg (title,name,content) values (%s,%s,%s)" #定義一個(gè)sql語(yǔ)句 >>>cur.executemany(sql,[('title01','name01','content01'),('title02','name02','content02')]) 2L >>>conn.commit() >>>
7. 利用 for 循環(huán)拼接sql命令插入多條數(shù)據(jù)
>>>sql = "insert into msg (title,name,content) values" >>>for i in range (100): >>> sql += "('id" + str(i) + "'," + "'name" + str(i) + "'," + "'content" + str(i) + "')," >>>sql = sql[:-1] #利用切片將最后的"," 刪除. >>>cur.execute(sql) 103L >>>conn.commit() >>>
8. 執(zhí)行刪除命令
>>>cur.execute("delete from msg where title = 'title02' ") 1L >>>conn.commit() >>>
9. 執(zhí)行更改命令
>>>cur.execute("update msg set title='changedTitle' where title='title01'") 1L >>>conn.commit() >>>
10. 執(zhí)行查詢命令
>>>cur.execute("select * from msg") 3L #返回記錄條數(shù) >>>
python的查詢語(yǔ)句并不會(huì)返回?cái)?shù)據(jù)庫(kù)中存取的實(shí)際值, 僅返回獲得的記錄條數(shù), 那么想要獲得數(shù)據(jù)庫(kù)中的值該怎么做呢?
我們需要用到游標(biāo)的fetch.
11. 利用fetchone()獲得一條記錄.該條記錄是當(dāng)前游標(biāo)所在行的下一行數(shù)據(jù).
>>>cur.fetchone() (1L, 'title01', 'name01', 'content01')
12. 利用fetchmany(size=num) 獲取多條記錄.
>>>cur.fetchmany(size=5) ((2L, 'python', 'ChenYL', 'insert content'), (3L, 'py03', 'name03', 'content03'), (4L, 'py04', 'name04', 'content04'), (5L, 'id0', 'name0', 'content0'), (7L, 'id2', 'name2', 'content2')) >>>
Note: 此處若查詢數(shù)據(jù)多于size參數(shù)則獲取和size參數(shù)相同的記錄條數(shù), 若查詢數(shù)據(jù)記錄少于size參數(shù)的值,則只顯示查詢到的數(shù)據(jù)記錄條數(shù).
13. 利用fetchall()獲取從游標(biāo)位置下一行開始直到查詢記錄結(jié)束的全部記錄.
>>>cur.fetchall() 105L >>>
14. 利用scroll()移動(dòng)游標(biāo)
>>>cur.scroll(1,mode="absolute") >>>
Note: 當(dāng)mode為absolute時(shí)游標(biāo)走到表中的第一個(gè)參數(shù)行(若第一個(gè)參數(shù)為1,則走到表中第一行),次數(shù)用fetchone()會(huì)取到第二行.
當(dāng)mode為relative是,此時(shí)游標(biāo)會(huì)往下走一行, 假如游標(biāo)在第三行, scroll之后會(huì)走到第四行.
15. 數(shù)據(jù)庫(kù)使用完之后記得關(guān)閉游標(biāo). 關(guān)閉數(shù)據(jù)庫(kù)連接.
>>>cur.close() >>>conn.close
注: 上述實(shí)例執(zhí)行結(jié)果返回的記錄條數(shù)和結(jié)果與數(shù)據(jù)庫(kù)中記錄相關(guān).
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python常見數(shù)據(jù)庫(kù)操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
- python Django連接MySQL數(shù)據(jù)庫(kù)做增刪改查
- 詳解使用pymysql在python中對(duì)mysql的增刪改查操作(綜合)
- Python實(shí)現(xiàn)連接MySql數(shù)據(jù)庫(kù)及增刪改查操作詳解
- Python+Django+MySQL實(shí)現(xiàn)基于Web版的增刪改查的示例代碼
- python實(shí)現(xiàn)的MySQL增刪改查操作實(shí)例小結(jié)
- python django 增刪改查操作 數(shù)據(jù)庫(kù)Mysql
- Python連接mysql數(shù)據(jù)庫(kù)及簡(jiǎn)單增刪改查操作示例代碼
- Python操作MySQL數(shù)據(jù)庫(kù)實(shí)例詳解【安裝、連接、增刪改查等】
- Python使用pymysql模塊操作mysql增刪改查實(shí)例分析
- Python接入MySQL實(shí)現(xiàn)增刪改查的實(shí)戰(zhàn)記錄
相關(guān)文章
python 函數(shù)中的內(nèi)置函數(shù)及用法詳解
這篇文章主要介紹了python 函數(shù)中的內(nèi)置函數(shù) 及用法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07Python中動(dòng)態(tài)檢測(cè)編碼chardet的使用教程
最近利用python抓取一些網(wǎng)上的數(shù)據(jù),遇到了編碼的問(wèn)題。非常頭痛,幸運(yùn)的是找到了解決的方法,下面這篇文章主要跟大家介紹了關(guān)于Python中動(dòng)態(tài)檢測(cè)編碼chardet的使用方法,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-07-07Python通過(guò)Socket手動(dòng)實(shí)現(xiàn)HTTP協(xié)議
這篇文章主要為大家詳細(xì)介紹了Python如何通過(guò)Socket手動(dòng)實(shí)現(xiàn)HTTP協(xié)議,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一2024-03-03python 百度aip實(shí)現(xiàn)文字識(shí)別的實(shí)現(xiàn)示例
百度aip將圖片或掃描件中的文字識(shí)別成可編輯的文本,本文主要介紹了python 百度aip實(shí)現(xiàn)文字識(shí)別,具有一定的參考價(jià)值,感興趣的可以了解一下2021-08-08python算法學(xué)習(xí)雙曲嵌入論文方法與代碼解析說(shuō)明
這篇文章主要為大家介紹了python算法學(xué)習(xí)雙曲嵌入論文方法與代碼的實(shí)現(xiàn)解析說(shuō)明,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11Python實(shí)現(xiàn)提取語(yǔ)句中的人名
這篇文章主要為大家介紹一個(gè)小工具:可以將語(yǔ)句中的人名提取出來(lái)。文中的示例代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-01-01