我有两个主题。一个是从数据库中提取数据,另一个是使用中止按钮显示进度条。如果我按下中止按钮,则另一个线程执行的查询应该被取消。
我知道如何从命令提示符中删除它;但是,如果你们中的任何人都知道从java取消查询,那对我来说会有所帮助。
答案 0 :(得分:3)
以下是一些可能有所帮助的提示:
您可以从另一个线程调用Statement.cancel
来停止该声明
来自javadoc http://docs.oracle.com/javase/6/docs/api/java/sql/Statement.html#cancel()
如果DBMS和驱动程序都支持,则取消此Statement对象 中止SQL语句。这个方法可以由一个线程使用 取消正由另一个线程执行的语句。
自5.0版以来,mysql驱动程序支持Statement.cancel
修改强>
您还可以使用Statement.setQueryTimeout(int seconds)
http://docs.oracle.com/javase/6/docs/api/java/sql/Statement.html#setQueryTimeout(int)