如何检查Python中的MySQL连接是否已关闭?

Ken*_*ent 26 python mysql

问题说明了一切.如何检查我的MySQL连接是否在Python中关闭?

我正在使用MySQLdb,请参阅http://mysql-python.sourceforge.net/

Eli*_*ght 32

如果连接是打开的,则该Connection.open字段将是.所以你可以说10

if conn.open:
    # do something
Run Code Online (Sandbox Code Playgroud)

  • @Walty:`conn.open`属性将告诉您连接是否已显式关闭或是否已检测到远程关闭.但是,您始终可能会尝试发出查询并突然发现连接已经发出 - 没有办法提前检测到这一点(实际上,它可能在发出查询的过程中发生),所以唯一真正安全的是将你的调用包装在try/except块中. (6认同)
  • 事实上,它对我不起作用.即使conn.open为true,当我在很长的空闲时间后尝试进行查询时,它仍会抛出异常"服务器已经消失". (4认同)
  • @EliCourtwright - 如果'try'因mysql错误而失败,抛出的异常类型是什么? (4认同)