詳解Python如何利用pymysql封裝項目通用的連接和查詢
前言
一個項目通常都需要有數據庫,而對於python這門語言,除瞭一些框架自帶orm或者擴展的orm(像django自帶orm,flask則需要擴展的orm),使用orm必然有他的好處,但毫無疑問你要花時間學習這個orm,那麼接下來阿牛帶你們用pymysql簡單分裝一個通用的連接,關閉和查詢!
pymysql 介紹與安裝
PyMySQL 是在 Python3.x 版本中用於連接 MySQL 服務器的一個庫,Python2中則使用mysqldb。
在終端使用以下指令安裝:
pip3 install PyMySQL
pymysql 的使用
import pymysql # 打開數據庫連接,password為你的數據庫密碼,db是數據庫名 db = pymysql.connect(host="127.0.0.1", user="root", password=" ", db=" ", charset="utf8") # 使用 cursor() 方法創建一個遊標對象 cursor = db.cursor() # 使用 execute() 方法執行 SQL 查詢 cursor.execute("SELECT VERSION()") # 使用 fetchone() 方法獲取單條數據. data = cursor.fetchone() print("Database version : %s " % data) #關閉數據庫連接 db.close()
password為你的數據庫密碼,db是數據庫名,操作前請先建立好你的mysql數據庫。
如圖,我連接成功並且獲取到瞭我數據庫的版本!
方法execute執行我們的sql語句。
在獲取執行的結果時,可以指定獲取的結果的條數,可以使用的選項如下:
fetchone() # 取得檢索結果的一條數據 fetchmany(n) # 取得檢索結果的n條數據 fetchall() # 取得檢索結果的所有數據
需要註意的是,與讀取文件時的指針類似,如果在同一段代碼中,先使用fetchone()獲取檢索結果的第一條數據,然後再使用fetchmany(2)的話,指針會在檢索結果的當前位置向後讀取執行結果,而不會從頭開始重新讀取檢索的結果。
獲取到的結果是元組。,如下圖:
封裝項目通用的連接和查詢
請自行寫入密碼和數據庫
import pymysql # 創建連接 #return: 連接,遊標 def get_conn(): # 創建連接 conn = pymysql.connect(host="127.0.0.1", user="root", password="", db="", charset="utf8") # 創建遊標 cursor = conn.cursor()# 執行完畢返回的結果集默認以元組顯示 return conn, cursor # 關閉遊標,連接 def close_conn(conn, cursor): cursor.close() conn.close() def query(sql,*args): """ 封裝通用查詢 :param sql: :param args: :return: 返回查詢到的結果,((),(),)的形式 """ conn, cursor = get_conn() cursor.execute(sql,args) res = cursor.fetchall() close_conn(conn, cursor) return res
因此,我們在查詢時隻需要調用query()函數就行,*args可以讓其傳入任意個參數或者不傳參數,隻需要sql語句中的占位符和參數個數對應就可以!
使用如下圖所示
結語
隻要你的sql過關,pymsql也可以幫助你完成項目!不一定需要使用orm哦!
以上就是詳解Python如何利用pymysql封裝項目通用的連接和查詢的詳細內容,更多關於Python pymysql封裝連接 查詢的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- python執行數據庫的查詢操作實例講解
- Python基礎之操作MySQL數據庫
- Python全棧之學習MySQL(3)
- 教你怎麼用Python操作MySql數據庫
- python 基於PYMYSQL使用MYSQL數據庫