PHP前端开发

重复实例化对象触发 del 方法导致异常:如何避免 Python 中的数据库连接错误?

百变鹏仔 5天前 #Python
文章标签 数据库连接

重复实例化对象触发 del 方法导致异常

在这个问题中,代码中出现了重复实例化对象触发 del 方法导致异常的情况。

分析:

问题代码中,socketsetting 类中有一个 __del__ 方法,用于关闭数据库连接。在 run 类中,重复实例化了三个 socketsetting 实例,导致了数据库连接的异常关闭。

立即学习“Python免费学习笔记(深入)”;

解决:

为了解决这个问题,可以考虑以下方法:

代码:

def __del__(self):    print('销毁连接', self.name)    if self.db:        self.db.cursor.close()        self.db.conn.close()

代码:

with Mydb(name) as db:    # 使用数据库连接    db.query('...')

建议: