Skip to Main Content

Java Database Connectivity (JDBC)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Pass a Java Array To Oracle Stored Procedure -- ArrayDescriptor shows as Deprecated

user12296100Jul 1 2016 — edited Jul 6 2016

I have the following:

  Connection conn = null;

  OracleCallableStatement orclCallStmt = null;

  Integer[] ackinfo = new Integer[ack.size()];

               ack.toArray(ackinfo);

  Integer[] nakinfo = new Integer[nak.size()];

               nak.toArray(nakinfo);

   query = "call pm_pbx_systems.updateInfTransport(?,?)";

  oracle.sql.ARRAY ackList;

  oracle.sql.ARRAY nakList;

ArrayDescriptor acks = ArrayDescriptor.createDescriptor( "T_NUMBER_ARRAY", conn);

             ackList = new ARRAY(acks, conn, ackinfo);

  ArrayDescriptor naks = ArrayDescriptor.createDescriptor( "T_NUMBER_ARRAY", conn);

          nakList = new ARRAY(naks, conn, nakinfo);

    orclCallStmt = (OracleCallableStatement) conn.prepareCall(query);

    orclCallStmt.setObject(1, ackList);

   orclCallStmt.setObject(2, nakList);

    orclCallStmt.execute();

CREATE OR REPLACE TYPE   t_number_array AS TABLE OF number;

I am using OJDBC7.jar for Oracle 12C.

I would like not to use a deprecated method.

This post has been answered by user12296100 on Jul 6 2016
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Aug 3 2016
Added on Jul 1 2016
5 comments
2,997 views