正确处理与pymysql的关闭连接

问题描述

我正在创建一个类来统一我们处理数据库的方式,并且我想确保在不再使用该对象时关闭连接,该类是这样的:

import pyMysqL

class MyContainerdbclass:

    def __init__():
     self.connection = pyMysqL.connect(.....)
    
    def foo():
        ...

    def __del__(self):
        self.connection.close()

它工作正常,但是当程序完成时,我得到了一个烦人的警告:

Traceback (most recent call last):
  File "...../MysqL.py",line 12,in __del__
  File "...../python3.7/site-packages/pyMysqL/connections.py",line 359,in close
TypeError: 'nonetype' object is not callable

我只是添加一个try / except来避免这种情况,但是我不确定这是否安全。

def __del__(self):
    try:
        self.connection.close()
    except TypeError:
        pass

据我研究,销毁该对象时没有打开的连接。让我知道您是否同意这种方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)