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!

Urgent -ARRAY creation gives Exception-" Fail to convert to internal representation"

355707Nov 8 2002
Hi ,
I am encountering ERROR when trying to create ARRAY in one case
while the same code works perfectly in other case.

-----------------------------------------------------
The following code works fine:
Connection con=getConnection();
String[][] elements = new String[1][2];
elements[0][0] =new Long(1111).toString();
elements[0][1] =new Long(2222).toString();

ArrayDescriptor desc = ArrayDescriptor.createDescriptor("TYPE1",con);
toReturn = new ARRAY(desc,con,elements);

-----------------------------------------------------
The following CODE GIVES ERROR :
Connection con=getConnection();
String[] elements = new String[1];
elements[0] =new Long(1111).toString();

ArrayDescriptor desc = ArrayDescriptor.createDescriptor("TYPE2",con);
toReturn = new ARRAY(desc,con,elements);

Stack:
java.sql.SQLException: Fail to convert to internal representation: [I@13

void oracle.jdbc.dbaccess.DBError.throwSqlException(java.lang.String, java.lang.String, int)

void oracle.jdbc.dbaccess.DBError.throwSqlException(int, java.lang.Object)

void oracle.jdbc.dbaccess.DBError.check_error(int, java.lang.Object)

oracle.sql.Datum[] oracle.jdbc.oracore.OracleTypeADT.toDatumArray(java.lang.Object, oracle.jdbc.driver.OracleConnection, long, int)

oracle.sql.Datum[] oracle.jdbc.oracore.OracleTypeUPT.toDatumArray(java.lang.Object, oracle.jdbc.driver.OracleConnection, long, int)

oracle.sql.Datum[] oracle.sql.ArrayDescriptor.toOracleArray(java.lang.Object, long, int)

void oracle.sql.ARRAY.<init>(oracle.sql.ArrayDescriptor, java.sql.Connection, java.lang.Object)

void com.cramer.inventory.Test.createIDlistARRAYObject()

void com.cramer.inventory.Test.main(java.lang.String[])

---------------------------------------------------------
Please help.

FYI :
type TYPE1 is table of OBJECT : (ID NUMBER, Name VARCHAR2(50));
type TYPE2 is table of OBJECT : (ID NUMBER);

I tried to pass array of long ,int etc in case of TYPE2 but with no advantage.

Regards,
Rajeev
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Dec 6 2002
Added on Nov 8 2002
0 comments
179 views