我需要处理返回三个数据库(Oracle、sybase、MS-Server)的存储过程/函数的结果集。过程/功能通常是相同的,但在 Oracle 中的调用略有不同。
statement.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR);
...
statement.execute();
ResultSet rs = (ResultSet)statement.getObject(1);
JDBC 没有提供通用的方法来处理这个问题,所以我需要在我的代码中区分不同类型的 DB。我得到了连接,但不知道确定数据库是否是 oracle 的最佳方法。我可以使用驱动程序名称,但宁愿找到一种更简洁的方法。