【问题标题】:How to pass array to oracle stored procedure from java with ojdbc 12.1.0.2 driver?如何使用 ojdbc 12.1.0.2 驱动程序将数组从 java 传递给 oracle 存储过程?
【发布时间】:2018-09-19 23:44:46
【问题描述】:

我使用的是oracle 11 版本,并像这样将java array 传递给oracle stored procedure

ArrayDescriptor Descriptor = ArrayDescriptor.createDescriptor("COMMON_STRING128_LIST", oracleConnection);
String[] array = initializeArray();
ARRAY mer = new ARRAY(Descriptor, oracleConnection, array);
callableStatement.registerOutParameter(1, Types.ARRAY);

我将我的 oracle version 更新为 oracle 12.1.0.2 并且我正在使用 ojdbc7 12.1.0.2 并且所有这些 classes (ArrayDescriptor , ARRAY ) 现在都已弃用。

我怎样才能对 ojdbc 12.1.0.2 驱动程序和 oracle 12 database 做同样的想法?

【问题讨论】:

    标签: java oracle oracle12c ojdbc


    【解决方案1】:

    根据oracle.sql.ARRAY javadocs

    使用 java.sql.Array 接口进行声明,而不是使用具体类 oracle.sql.ARRAY。

    例如:

    java.sql.Array array = ((oracle.jdbc.OracleConnection)connection).createOracleArray((...);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-26
      • 2013-10-24
      • 2012-02-10
      • 1970-01-01
      • 2011-05-01
      • 1970-01-01
      • 2011-10-23
      • 2011-11-16
      相关资源
      最近更新 更多