JDBC setQueryTimeout 不起作用?

发布于 2024-11-08 13:45:14 字数 241 浏览 0 评论 0原文

我正在通过 JAVA 使用 JDBC 驱动程序查询 MSSQL 2008 服务器。 我做了这样的事情:

PreparedStatement stmt = ...;
...
stmt.setQueryTimeout(60);
stmt.executeQuery();

我看到当 SQL 服务器上有负载时,即使超时已经过去,该语句也不会被取消。

有人对此有线索吗?

谢谢。

I'm querying MSSQL 2008 server thourgh JAVA, using the JDBC driver.
I do something like this:

PreparedStatement stmt = ...;
...
stmt.setQueryTimeout(60);
stmt.executeQuery();

I see that when there's a load on the SQL server, the statement doesn't get cancelled even though the timeout has passed.

Does anyone have a clue about this?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

复古式 2024-11-15 13:45:14
  • setQueryTimeout 的时间根本不精确该
  • 异常依赖于服务器确认取消命令

所以,YMMV 不幸的是...

参考文献:(找不到更好的东西,抱歉)

  • The timing for setQueryTimeout is not precise at all
  • The exception relies on the server acknowledging the cancel command

So, YMMV unfortunately...

References: (can't find anything better, sorry)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文