如果发生python异常,有没有办法在python中停止执行mysql查询?

时间:2015-03-06 18:29:14

标签: python mysql mysql-connector-python

我正在运行一个python脚本,它执行包含许多行的mysql查询。查询需要花费大量时间来运行,有时我需要停止脚本来更改某些内容或重新开始。有没有办法告诉mysql服务器脚本正在终止(例如,如果发生KeyboardInterrupt异常)并且不再需要查询结果?

我尝试关闭mysql连接,但它没有用。查询的执行继续进行。

我知道我可以直接从服务器终止查询,但我希望脚本自己完成。

我正在使用mysql-connector-python库,版本是2.0.2。

1 个答案:

答案 0 :(得分:1)

您可以将代码包装在try except块中,并在引发异常时终止查询。这样的事情:

pid = <get the pid of the query>
try:
  .... your code
except:
  cursor.execute('kill %s', pid)