Python數(shù)據(jù)庫封裝實現(xiàn)代碼示例解析
更新時間:2020年09月05日 10:09:31 作者:Python探索牛
這篇文章主要介紹了Python數(shù)據(jù)庫封裝實現(xiàn)代碼示例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
Django中(原生mysql封裝)
1.函數(shù)封裝
import pymysql
# 查 所數(shù)據(jù)
def get_all(sql):
conn = pymysql.connect(host="localhost", user="root", password="root", database="db6")
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute(sql)
res = cur.fetchall()
cur.close()
conn.close()
return res
# 查 一行數(shù)據(jù)
def get_one(sql,args):
conn = pymysql.connect(host="localhost", user="root", password="root", database="db6")
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute(sql,args)
res = cur.fetchone()
cur.close()
conn.close()
return res
# 增 刪 改 都要提交 commit
def get_mif(sql,args):
conn = pymysql.connect(host="localhost", user="root", password="root", database="db6")
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute(sql,args)
conn.commit()
cur.close()
conn.close()
# 增 刪 改 都要提交 commit
# 添加并且?guī)Х祷刂?
def get_create(sql,args):
conn = pymysql.connect(host="localhost", user="root", password="root", database="db6")
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute(sql,args)
conn.commit()
cur.close()
conn.close()
return cur.lastrowid
# python插入記錄后取得主鍵id的方法(cursor.lastrowid和conn.insert_id())
# 增 刪 改 都要提交 commit
# 批量加入 以元祖的形式傳參數(shù) 就是添加幾次次提交一次
def mul_mode(sql, args):
conn = pymysql.connect(host="localhost", user="root", password="root", database="db6")
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
# self.cursor.executemany("insert into user (id,name) values (%s,%s)",[(1,"aaa"),(2,"bbb"),(3,"ccc")]) 傳參方式
cur.executemany(sql, args)
conn.commit()
cur.close()
conn.close()
2.對象封裝
import pymysql
# 注意 args 參數(shù)可以傳空值[]
class Mysqls(object):
def __init__(self):
# 讀取配置文件
self.connect()
def connect(self):
self.conn = pymysql.connect(host="localhost", user="root", password="root", database="db6") # 可以把主機(jī)連接等寫入配置文件 等
self.cursor=self.conn.cursor(cursor=pymysql.cursors.DictCursor)
# 獲取所以數(shù)據(jù)
def get_all(self,sql,args):
self.cursor.execute(sql,args)
res = self.cursor.fetchall()
return res
# 獲取一行數(shù)據(jù)
def get_one(self,sql,args):
self.cursor.execute(sql, args)
res = self.cursor.fetchone()
return res
# 添加 就是添加一次提交多次
def get_mode (self,sql,args):
self.cursor.execute(sql, args)
self.conn.commit()
# 添加并且?guī)Х祷刂?
def get_create(self,sql,args):
self.cursor.execute(sql,args)
self.conn.commit()
return self.cursor.lastrowid
# python插入記錄后取得主鍵id的方法(cursor.lastrowid和conn.insert_id())
# 批量加入 以元祖的形式傳參數(shù) 就是添加一次提交一次
def mul_mode(self, sql, args):
# self.cursor.executemany("insert into user (id,name) values (%s,%s)",[(1,"aaa"),(2,"bbb"),(3,"ccc")]) 傳參方式
self.cursor.executemany(sql, args)
self.conn.commit()
def get_close(self):
self.cursor.close()
self.conn.close()
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Python接口測試數(shù)據(jù)庫封裝實現(xiàn)原理
- Python3實現(xiàn)的Mysql數(shù)據(jù)庫操作封裝類
- Python操作Oracle數(shù)據(jù)庫的簡單方法和封裝類實例
- Python Sql數(shù)據(jù)庫增刪改查操作簡單封裝
- Python實現(xiàn)封裝打包自己寫的代碼,被python import
- 簡單了解如何封裝自己的Python包
- python實現(xiàn)一次性封裝多條sql語句(begin end)
- python將logging模塊封裝成單獨模塊并實現(xiàn)動態(tài)切換Level方式
- Python發(fā)送郵件封裝實現(xiàn)過程詳解
相關(guān)文章
舉例講解Linux系統(tǒng)下Python調(diào)用系統(tǒng)Shell的方法
這篇文章主要介紹了舉例講解Linux系統(tǒng)下Python調(diào)用系統(tǒng)Shell的方法,包括用Python和shell讀取文件某一行的實例,需要的朋友可以參考下2015-11-11
pycharm配置pyqt5-tools開發(fā)環(huán)境的方法步驟
這篇文章主要介紹了pycharm配置pyqt5-tools開發(fā)環(huán)境的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02
Django重裝mysql后啟動報錯:No module named ‘MySQLdb’的解決方法
這篇文章主要給大家介紹了關(guān)于Django重裝mysql后啟動報錯:No module named ‘MySQLdb’的解決方法,分享出來,對同樣遇到這個問題的朋友們一個參考學(xué)習(xí),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04
關(guān)于TensorBoard可視化不顯示數(shù)據(jù)問題No scalar data was&nbs
這篇文章主要介紹了如何解決TensorBoard可視化不顯示數(shù)據(jù)問題No scalar data was found,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09

