文章内容
2019/3/4 17:37:46,作 者: 黄兵
MySQLdb 自动处理关闭连接
在数据库操作中,打开了数据库连接,一定要及时关闭。
如果不及时关闭,导致连接池用完,导致数据库连接失败。
所以在使用MySQLdb的时候,自动处理连接关闭很有必要。
下面是通用连接关闭的方式:
from contextlib import closing with closing(Conn_Config().Conn_MySQL()) as conn_mysql: with closing(conn_mysql.cursor()) as cur:
首先是打开了数据库连接,下面一句是打开了游标。
关于with closing()
的具体实现,代码如下:
from contextlib import contextmanager @contextmanager def closing(thing): try: yield thing finally: thing.close()
可以看到实现的方法,其实也就是一个上下文管理。
无论是否有异常,最后都会关闭上下文。
用在数据库上下文,同时也会自动处理关闭连接的任务。
参考资料:28.7. contextlib — Utilities for with-statement contexts
评论列表