用pymysql代替MySQLdb

在我剛開始學python的時候,用的是python2.7,那時候鏈接mysql用的庫是MySQLdb(很詭異的大小寫,初學者常常由於記不住大小寫致使「No module named xxx」)。燃鵝,在python3中,這個庫已經不能繼續使用了。怎麼辦呢?在python3中,可使用pymysql或mysqlclient。今天我要介紹的就是pymysql。
若是有MySQLdb的基礎,其實pymysql的使用也是很是相似的,一樣是這麼幾個步驟:
鏈接數據庫→建立遊標→執行SQL→fetch得到數據,進行業務處理→關閉遊標→commit→關閉數據庫鏈接

可以使用的函數也是很是像。python

 
鏈接數據庫:
conn = pymysql.connect(host=host, user=user, passwd=password, db=db)

 

建立遊標:
cur = conn.cursor()

 

執行SQL:
cur.execute("INSERT INTO table VALUE something")
cur.execute("SELECT * FROM table")

 

獲取數據:
data = cur.fetchone()
data = cur.fetchmany()
data = cur.fetchall()
# data是個生成器

 

關閉遊標:
cur.close()

 

若是SQL是insert之類的DML語句,要記得commit:
conn.commit()

 

關閉數據庫鏈接
conn.close()

 

看,就是這麼簡單。至於建庫、存儲過程、事務之類的,個人建議是減小使用,SQL就寫最基本的SQL,複雜的操做都在程序中執行(咳咳,其實複雜的SQL我也不會寫)。因此,就簡單地講這麼點了,你們上手試試就會用了。
(啊~~~好糊弄人的一篇博客啊~~~)
相關文章
相關標籤/搜索