詳解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 條評論)
    暫無評論

    返回頂部

    主站蜘蛛池模板: 国产美女一区二区三区| 精品一区二区久久久久久久网精| 国产一区二区三区在线| 国产另类ts人妖一区二区三区 | 久久se精品动漫一区二区三区| 久久精品国产免费一区| 精品人妻一区二区三区毛片| 久久精品国产一区二区三| 国产AV一区二区三区无码野战 | 精品国产一区二区麻豆| 美女福利视频一区二区| 美女免费视频一区二区三区| 亚洲Av无码一区二区二三区| 中文日韩字幕一区在线观看| 午夜影院一区二区| 在线观看午夜亚洲一区| 国产免费一区二区三区不卡 | 亚洲福利视频一区| 欧洲精品一区二区三区| 国产精品视频分类一区| 国产成人一区二区三区电影网站 | 亚洲av无码一区二区三区观看 | 国产乱码精品一区二区三区中文 | 日本在线一区二区| 国产精品美女一区二区三区 | 精品一区二区久久久久久久网站| 成人精品一区久久久久| 国产一区二区三区乱码| 亚洲av无码一区二区三区天堂| 任你躁国语自产一区在| 日本在线视频一区| 伊人久久一区二区三区无码| 自拍日韩亚洲一区在线| 国产在线精品一区二区高清不卡 | 亚洲福利视频一区二区三区| 亚洲成在人天堂一区二区| 一区二区三区在线免费观看视频| 久久精品中文字幕一区| 无码日韩人妻AV一区免费l| 成人精品视频一区二区三区不卡 | 日韩一区二区三区四区不卡|