Oracle Data Provider for .NET / ODP.NETを使用してタイムアウトを指定する唯一の接続文字列オプションは次のとおりです。
Data Source=myOracle;User Id=myUsername;Password=myPassword;Min Pool Size=10;Connection Lifetime=120;Connection Timeout=60;Incr Pool Size=5;Decr Pool Size=2;
ここでさらに例を得ることができます: http://www.connectionstrings.com/oracle#p12
説明は次のとおりです。
デフォルトでは、接続プーリングは有効になっています。これはプーリングメカニズムを制御します。接続プール サービスは、ConnectionString プロパティを使用してプールを一意に識別することにより、接続プールを作成します。
最初に開いた接続によって、接続プールが作成されます。サービスは、最初に Min Pool Size パラメータで定義された数の接続を作成します。
Incr Pool Size 属性は、さらに多くの接続が必要な場合に接続プール サービスによって作成される新しい接続の数を定義します。
接続が閉じられると、接続プーリング サービスは、接続の有効期間が Connection Lifetime 属性の値を超えたかどうかを判断します。その場合、接続は閉じられています。それ以外の場合、接続は接続プールに戻ります。
接続プーリング サービスは、未使用の接続を 3 分ごとに閉じます。Decr Pool Size 属性は、3 分ごとに閉じることができる接続の最大数を指定します。
さらに、クエリを実行している OracleCommand からタイムアウトが発生しているかどうかを確認できます。OracleCommand.CommandTimeout プロパティに関するドキュメントを探してください。
Oracle コマンドのタイムアウトに関するディスカッションについては、このサイトを参照して
ください https://forums.oracle.com/forums/thread.jspa?threadID=317603