gpt4 book ai didi

java - 如何确定给定 JDBC 连接的数据库类型?

转载 作者:IT老高 更新时间:2023-10-28 21:05:49 25 4
gpt4 key购买 nike

我需要处理返回三个数据库(Oracle、sybase、MS-Server)的存储过程/函数的结果集。过程/函数通常相同,但调用在 Oracle 中略有不同。

statement.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR);
...
statement.execute();
ResultSet rs = (ResultSet)statement.getObject(1);

JDBC 没有提供通用的方法来处理这个问题,所以我需要在我的代码中区分不同类型的 DB。我得到了连接,但不知道确定数据库是否是 oracle 的最佳方法。我可以使用驱动程序名称,但宁愿找到更简洁的方法。

最佳答案

我怀疑你会想要使用 DatabaseMetaData 类。最有可能DatabaseMetaData.getDatabaseProductName就足够了,但如果您的代码依赖于您正在使用的特定数据库的特定版本,您可能还想使用 getDatabaseProductVersion 方法。

关于java - 如何确定给定 JDBC 连接的数据库类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/254213/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com