在Python中停止SQL查询
有没有办法让用户在Python中停止一个SQL查询的执行,如果这个查询花费了很长时间?我在考虑使用一个进度条和一个取消按钮,但我想知道有没有更好的方法来干净利落地停止它,而不是直接强行结束相关的线程?(我正在使用pysqlite2和MySQLdb这两个包)
1 个回答
3
我看到的唯一解决办法是获取进程的ID:
SHOW PROCESSLIST;
然后结束这个进程:
KILL <thread_id>;
我会用mysqldb来执行这些命令。
不过,你要小心回滚的问题。比如说,看看这个链接: 如果我停止一个运行时间很长的查询,它会回滚吗?
希望这能帮到你