java - 使用java取消jdbc SQL查询
问题描述
我有两个 Oracle 数据库实例,都是 11g 版本。
我编写了一个简单的 java 代码来执行查询,然后在它运行时取消它。这是我的代码。
Connection con=DriverManager.getConnection(
"jdbc:oracle:thin:@mydb1:1521:orcl","username","***");
Statement stmt=con.createStatement();
new Thread(new Runnable() {
private Statement tstmt;
public Runnable init(Statement tstmt) {
this.tstmt = tstmt;
return this;
}
@Override
public void run() {
try{
System.out.println("Running the thread....");
Thread.sleep(1500);
tstmt.cancel();
}
catch(InterruptedException e)
{
System.out.println("InterruptedException...");
}
catch(SQLException e)
{
System.out.println("SQLException...");
}
}
}.init(stmt)).start();
我基本上是在查询运行时调用 statement.cancel 并且我想在异常中处理它。当我对 db1 运行它时,会触发 SQLException。但是它不会发生在 db2 上。
我无法弄清楚为什么这种行为差异。是否有可以在数据库中启用/禁用的取消查询设置?
解决方案
推荐阅读
- r - 如何将标签与 ggplot 2 中的条对齐
- jenkins - Jenkins Pipeline - 在shell中插入变量创建一个新行
- python - 使用权重文件离线加载keras resnet50模型失败
- node.js - 如何在请求上下文之外的 nodejs Express 中捕获异步错误?
- swiftui - SwiftUI - 通过嵌套引用类型传播更改通知
- java - Spring API 中的返回请求
- python - 如何将日期偏移到月初?
- php - Yii2 - GridView 外的 dropDownList 过滤器
- pandas - 熊猫,转换为日期时间后,没有正确排序
- twitter-bootstrap - 引导链接不起作用并且 id="navbar" class="navbar-collapse collapse" 不起作用