栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python接口自动化封装pymysql

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python接口自动化封装pymysql

python接口自动化封装pymysql 第一版封装

下面展示一些 内联代码片。

//第一版封装
class MysqlHandler():
    def __init__(
            self,
            host=None,
            port=3306,
            user=None,
            password=None,
            charset='utf8',
            cursorclass=DictCursor
    ):
        self.conn = pymysql.connect(
            host=host,
            port=port,
            user=user,
            password=password,
            charset=charset,
            cursorclass=cursorclass
        )
        self.cursor = self.conn.cursor()

    def query(self, sql, one=True):
        self.conn.commit() # 把最新的数据进行更新(提交事务。)
        self.cursor.execute(sql)
        if one:
            return self.cursor.fetchone()
        return self.cursor.fetchall()

    def query_all(self):
        pass

    def close(self):
        self.cursor.close()
        self.conn.close()
if __name__ == '__main__':
    pass
第二版封装
#第二版优化
#优化原因:1、增、删、改数据库操作后由于没有执行commit提交操作,导致未增删改操作未生效
#优化解决:1、self.cursor.execute(sql)后,增加self.conn.commit()操作
#优化点二:封装的初始化函数中缺少数据库名称的初始化database=None
#优化解决:__init__函数中增加database=None
class MysqlHandler():
    def __init__(
            self,
            host=None,
            port=3306,
            user=None,
            password=None,
            charset='utf8',
            cursorclass=DictCursor,
            database=None
    ):
        self.conn = pymysql.connect(
            host=host,
            port=port,
            user=user,
            password=password,
            charset=charset,
            cursorclass=cursorclass,
            database=database
        )
        self.cursor = self.conn.cursor()

    def query(self, sql, one=True):
        self.conn.commit() # 把最新的数据进行更新(提交事务。)
        self.cursor.execute(sql)
        self.conn.commit() #对于增删改的数据需要进行(提交事务)
        if one:
            return self.cursor.fetchone()
        return self.cursor.fetchall()

    def query_all(self):
        pass

    def close(self):
        self.cursor.close()
        self.conn.close()

if __name__ == '__main__':
    pass

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/325985.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号