詳解Python如何利用pymysql封裝項(xiàng)目通用得連接和查詢

    目錄

    前言

    一個(gè)項(xiàng)目通常都需要有數(shù)據(jù)庫,而對于python這門語言,除了一些框架自帶orm或者擴(kuò)展得orm(像django自帶orm,flask則需要擴(kuò)展得orm),使用orm必然有他得好處,但毫無疑問你要花時(shí)間學(xué)習(xí)這個(gè)orm,那么接下來阿牛帶你們用pymysql簡單分裝一個(gè)通用得連接,關(guān)閉和查詢!

    pymysql 介紹與安裝

    PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務(wù)器得一個(gè)庫,Python2中則使用mysqldb。

    在終端使用以下指令安裝:

    pip3 install PyMySQL

    pymysql 得使用

    import  pymysql# 打開數(shù)據(jù)庫連接,password為你得數(shù)據(jù)庫密碼,db是數(shù)據(jù)庫名db = pymysql.connect(host="127.0.0.1",                     user="root",                     password=" ",                     db=" ",                     charset="utf8")# 使用 cursor() 方法創(chuàng)建一個(gè)游標(biāo)對象cursor = db.cursor()# 使用 execute()  方法執(zhí)行 SQL 查詢 cursor.execute("SELECT VERSION()")# 使用 fetchone() 方法獲取單條數(shù)據(jù).data = cursor.fetchone()print("Database version : %s " % data)#關(guān)閉數(shù)據(jù)庫連接db.close()

    password為你得數(shù)據(jù)庫密碼,db是數(shù)據(jù)庫名,操作前請先建立好你得mysql數(shù)據(jù)庫。

    如圖,我連接成功并且獲取到了我數(shù)據(jù)庫得版本!

    方法execute執(zhí)行我們得sql語句。

    在獲取執(zhí)行得結(jié)果時(shí),可以指定獲取得結(jié)果得條數(shù),可以使用得選項(xiàng)如下:

    fetchone()         # 取得檢索結(jié)果得一條數(shù)據(jù)fetchmany(n)       # 取得檢索結(jié)果得n條數(shù)據(jù)fetchall()         # 取得檢索結(jié)果得所有數(shù)據(jù)

    需要注意得是,與讀取文件時(shí)得指針類似,如果在同一段代碼中,先使用fetchone()獲取檢索結(jié)果得第一條數(shù)據(jù),然后再使用fetchmany(2)得話,指針會在檢索結(jié)果得當(dāng)前位置向后讀取執(zhí)行結(jié)果,而不會從頭開始重新讀取檢索得結(jié)果。

    獲取到得結(jié)果是元組。,如下圖:

    封裝項(xiàng)目通用得連接和查詢

    請自行寫入密碼和數(shù)據(jù)庫

    import pymysql# 創(chuàng)建連接#return: 連接,游標(biāo)def get_conn():    # 創(chuàng)建連接    conn = pymysql.connect(host="127.0.0.1",                           user="root",                           password="",                           db="",                           charset="utf8")    # 創(chuàng)建游標(biāo)    cursor = conn.cursor()# 執(zhí)行完畢返回得結(jié)果集默認(rèn)以元組顯示    return conn, cursor# 關(guān)閉游標(biāo),連接def close_conn(conn, cursor):    cursor.close()    conn.close()def query(sql,*args):    """    封裝通用查詢    :param sql:    :param args:    :return: 返回查詢到得結(jié)果,((),(),)得形式    """    conn, cursor = get_conn()    cursor.execute(sql,args)    res = cursor.fetchall()    close_conn(conn, cursor)    return res

    因此,我們在查詢時(shí)只需要調(diào)用query()函數(shù)就行,*args可以讓其傳入任意個(gè)參數(shù)或者不傳參數(shù),只需要sql語句中得占位符和參數(shù)個(gè)數(shù)對應(yīng)就可以!

    使用如下圖所示

    結(jié)語

    只要你得sql過關(guān),pymsql也可以幫助你完成項(xiàng)目!不一定需要使用orm哦!

    以上就是詳解Python如何利用pymysql封裝項(xiàng)目通用得連接和查詢得詳細(xì)內(nèi)容,更多關(guān)于Python pymysql封裝連接 查詢得資料請關(guān)注之家其它相關(guān)內(nèi)容!

    聲明:所有內(nèi)容來自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。
    發(fā)表評論
    更多 網(wǎng)友評論1 條評論)
    暫無評論

    返回頂部

    主站蜘蛛池模板: 国产成人无码一区二区在线播放 | 国产一区二区精品久久| 高清无码一区二区在线观看吞精| 国产精品一区二区久久沈樵| 亚洲一区AV无码少妇电影☆| 亚洲国产成人久久一区WWW | 国产成人无码精品一区二区三区| 色噜噜狠狠一区二区三区果冻| 国精产品一区一区三区MBA下载 | 在线精品亚洲一区二区三区| 久久久久久免费一区二区三区| 中文字幕在线播放一区| 久久久久人妻一区精品色| 中文字幕人妻AV一区二区| 国模无码视频一区二区三区| 精品一区二区三区中文| 国语精品一区二区三区| 97精品一区二区视频在线观看| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 国产精品主播一区二区| 福利片免费一区二区三区| 制服中文字幕一区二区| 久久久无码一区二区三区| 亚洲第一区视频在线观看| 成人精品一区二区三区中文字幕| 国产精品揄拍一区二区久久| 国产日韩精品一区二区三区 | 精品国产一区二区三区四区| 狠狠色婷婷久久一区二区三区 | 亚洲老妈激情一区二区三区| 加勒比精品久久一区二区三区| 无码精品久久一区二区三区| av无码一区二区三区| 一区二区三区午夜视频| 日美欧韩一区二去三区| 国产一区麻豆剧传媒果冻精品| 无码人妻久久一区二区三区 | 亚洲乱码av中文一区二区| 国产怡春院无码一区二区| 三级韩国一区久久二区综合| 国产一区二区精品尤物|