3つのデータベース(Oracle、sybase、MS-Server)のストアドプロシージャ/関数を返す結果セットを処理する必要があります。手順/機能は一般的に同じですが、Oracleでは呼び出しが少し異なります。
statement.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR);
...
statement.execute();
ResultSet rs = (ResultSet)statement.getObject(1);
JDBCはこれを処理する一般的な方法を提供していないため、コード内のさまざまなタイプのDBを区別する必要があります。接続が与えられましたが、DBがオラクルであるかどうかを判断するための最良の方法がわかりません。ドライバー名を使用することもできますが、よりクリーンな方法を見つけたいと思います。