2010-07-26 59 views

回答

29

Connection.open领域将是1如果连接是开放的,0否则。所以你可以说

if conn.open: 
    # do something 
+3

事实上,它不适合我。即使conn.open为true,当我尝试在长时间的空闲时间后执行查询时,它仍然会抛出异常“服务器已经消失”。 – 2011-12-13 06:14:11

+5

@Walty:'conn.open'属性会告诉你连接是否已经明确关闭或是否检测到远程关闭。但是,您总是可以尝试发出查询,并且突然发现连接已经发出 - 无法提前检测到这种情况(实际上,这可能发生在发出查询的过程中),所以唯一真正安全的是将你的电话打包在一个try/except块中。 – 2011-12-13 15:18:34

+4

@EliCourtwright - 如果一个'尝试'从mysql错误失败时抛出异常类型是什么? – sadmicrowave 2011-12-27 19:28:00

相关问题