首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PyMySQL抛出"pymysql.err.Error:已经关闭“

PyMySQL抛出"pymysql.err.Error:已经关闭“
EN

Stack Overflow用户
提问于 2016-06-29 03:37:20
回答 1查看 3.1K关注 0票数 0

在PyMySQL中,如何使pymysql.connect永远活着?

如何在使用前检查已关闭的连接。

EN

回答 1

Stack Overflow用户

发布于 2016-06-29 04:20:38

查看pymysql代码,在行,您将看到connection对象有一个属性open

代码语言:javascript
复制
@property
def open(self):
    return self._sock is not None

因此,只需检查您的连接是否仍然使用此属性打开:

代码语言:javascript
复制
myconn = connection(host,username,password,db)

if conn.open:
    # do your db management here
else:
    #connect again

或者,您可以捕获在连接已经关闭的情况下命中DB引发的异常,这将引发错误代码2006年 (在行中也可以看到):

代码语言:javascript
复制
try:
    cursor.execute(myquery)
except pymysql.OperationalError as e:
    if e.errno == 2006:
        #reconnect to server
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38089962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档