【发布时间】:2014-11-21 06:24:31
【问题描述】:
您好,这是我的代码
List<String> listA = new ArrayList<String>(0);
String[] arrA = new String[100];
listA.add("aaa");
listA.add("bbb");
arrA[0]="aaa";
arrA[1]="bbb";
conn = DriverManager.getConnection(URL, USER, PASS);
oracle.jdbc.OracleConnection oraConn = (oracle.jdbc.OracleConnection) conn;
ArrayDescriptor des = ArrayDescriptor.createDescriptor("ARRAY_TABLE", oraConn);
//*****************
ARRAY array_to_pass1 = new ARRAY(des, conn, arrA );//* exception
CallableStatement cstm = (OracleCallableStatement) conn.prepareCall("{call xyz.procedure1(?,?)}");
cstm.setArray(1, array_to_pass1);
cstm.setInt(2, 1);
这工作正常,但是当我将 listA 而不是 arrA 传递给 ARRAY 构造函数时,它会抛出 sql 异常。我想传递 Arraylist 而不是 string[] 数组
【问题讨论】:
标签: java sql arrays oracle arraylist