Python實現(xiàn)MySQL操作的方法小結(jié)【安裝,連接,增刪改查等】
本文實例講述了Python實現(xiàn)MySQL操作的方法。分享給大家供大家參考,具體如下:
1. 安裝MySQLdb.從網(wǎng)站下載Mysql for python 的package 注意有32位和64位之分.
2. 安裝完成之后從Python IDLE 導(dǎo)入MySQLdb
>>>import MySQLdb
3. 新建一個數(shù)據(jù)庫連接:
>>>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不要加引號. charset要和數(shù)據(jù)庫的字符集相同.
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ù)插入才會生效.
>>>
6. 利用參數(shù)插入多條數(shù)據(jù)命令
>>>sql = "insert into msg (title,name,content) values (%s,%s,%s)" #定義一個sql語句
>>>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的查詢語句并不會返回數(shù)據(jù)庫中存取的實際值, 僅返回獲得的記錄條數(shù), 那么想要獲得數(shù)據(jù)庫中的值該怎么做呢?
我們需要用到游標(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()移動游標(biāo)
>>>cur.scroll(1,mode="absolute") >>>
Note: 當(dāng)mode為absolute時游標(biāo)走到表中的第一個參數(shù)行(若第一個參數(shù)為1,則走到表中第一行),次數(shù)用fetchone()會取到第二行.
當(dāng)mode為relative是,此時游標(biāo)會往下走一行, 假如游標(biāo)在第三行, scroll之后會走到第四行.
15. 數(shù)據(jù)庫使用完之后記得關(guān)閉游標(biāo). 關(guān)閉數(shù)據(jù)庫連接.
>>>cur.close() >>>conn.close
注: 上述實例執(zhí)行結(jié)果返回的記錄條數(shù)和結(jié)果與數(shù)據(jù)庫中記錄相關(guān).
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python常見數(shù)據(jù)庫操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計有所幫助。
- python Django連接MySQL數(shù)據(jù)庫做增刪改查
- 詳解使用pymysql在python中對mysql的增刪改查操作(綜合)
- Python實現(xiàn)連接MySql數(shù)據(jù)庫及增刪改查操作詳解
- Python+Django+MySQL實現(xiàn)基于Web版的增刪改查的示例代碼
- python實現(xiàn)的MySQL增刪改查操作實例小結(jié)
- python django 增刪改查操作 數(shù)據(jù)庫Mysql
- Python連接mysql數(shù)據(jù)庫及簡單增刪改查操作示例代碼
- Python操作MySQL數(shù)據(jù)庫實例詳解【安裝、連接、增刪改查等】
- Python使用pymysql模塊操作mysql增刪改查實例分析
- Python接入MySQL實現(xiàn)增刪改查的實戰(zhàn)記錄
相關(guān)文章
python機器學(xué)習(xí)pytorch自定義數(shù)據(jù)加載器
這篇文章主要為大家介紹了python機器學(xué)習(xí)pytorch自定義數(shù)據(jù)加載器使用示例學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
Python實現(xiàn)提取谷歌音樂搜索結(jié)果的方法
這篇文章主要介紹了Python實現(xiàn)提取谷歌音樂搜索結(jié)果的方法,涉及Python針對谷歌音樂相關(guān)信息的獲取技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-07-07
Python PyQt5實戰(zhàn)項目之查詢器的實現(xiàn)流程詳解
PyQt5以一套Python模塊的形式來實現(xiàn)功能。它包含了超過620個類,600個方法和函數(shù)。它是一個多平臺的工具套件,它可以運行在所有的主流操作系統(tǒng)中,包含Unix,Windows和Mac OS。PyQt5采用雙重許可模式。開發(fā)者可以在GPL和社區(qū)授權(quán)之間選擇2021-11-11

