My Oracle Support Banner

JDBC の setQueryTimeout を使用して長時間のクエリをキャンセルし、ORA-1013 を発生させる方法 (Doc ID 2393793.1)

Last updated on SEPTEMBER 25, 2019

適用範囲:

JDBC - バージョン 10.2.0.3 から 12.2.0.0.0 [リリース 10.2 から 12c]
この文書の内容はすべてのプラットフォームに適用されます。

目的

本文書では、JDBC の非常に単純なスタンドアロン・プログラムを使用して、JDBC の標準メソッドである setQueryTimeout() を動作させる方法を説明します。setQueryTimeout() は JDBC の java.sql.Statement オブジェクトに対して使用可能なメソッドです。また、データベースおよび JDBC ドライバの制約に起因した、setQueryTieout() の動作上の制約に関しても扱います。

Stetement.setQueryTimeout(int seconds)Statement.cancel() メソッドに依存し、指定されたタイムアウト間隔よりも長い実行時間のクエリをキャンセルするためのスレッドを実装しています。

このデモンストレーションは、次のドキュメントに基づいて作成しています :  <Note 357615.1> How to simulate a slow query. Useful for testing of timeout issues

プログラムで動作確認済みなのは、RDBMS 10.2.0.3 ( Linux x86 32-bit) JDBC/thin 10.2.0.3、 JDBC/thin 11.1.0.6、 JDBC/thin 11.2.0.2 および JDK 1.5 / 1.6 ( Windows client)、そして JDBC 12c です。

解決策

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


本書の内容
目的
解決策
参照情報

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.