pymyqsl美化代码

import pymysql
from dbutils.persistent_db import PersistentDB


class MysqlUtil:

    def __init__(self, host, port, user, password, database):
        self.__pool = PersistentDB(
            creator=pymysql,
            maxusage=None,  # 一个链接最多被重复使用的次数,None表示无限制
            setsession=[],  # 开始会话前执行的命令列表。如:["set datestyle to ...", "set time zone ..."]
            ping=0,  # ping MySQL服务端,检查是否服务可用。
            closeable=False,  # 如果为False时, conn.close() 会把连接重新放到线程池中。如果为True时, conn.close()则关闭链接,不会放到线程池,
            # 那么再次调用pool.connection时就会报错,(注:pool.steady_connection()可以获取一个新的链接)
            threadlocal=None,  # 本线程独享值得对象,用于保存链接对象,如果链接对象被重置
            host=host,
            port=port,
            user=user,
            password=password,
            database=database,
            charset='utf8',
        )
        self.__connect = self.__pool.connection()

    def connect(self):
        if self.__connect is None:
            self.__connect = self.__pool.connection()
        return self.__connect

    def close(self):
        self.__connect.close()

    def insert(self, sql, args=()):
        cursor = self.__connect.cursor()
        cursor.execute(sql, args)

    def query(self, sql, args=()):
        cursor = self.__connect.cursor()
        cursor.execute(sql, args)
        return cursor.fetchall()


if __name__ == '__main__':
    mysqlUtil = MysqlUtil("localhost", 3306, "root", "123456", "test")
    result = mysqlUtil.query("select * from test where name=%s", ('无敌小怪兽', ))
    print(result[0])
    mysqlUtil.close()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值