gpt4 book ai didi

java - 如何复用 ArrayDescriptor?

转载 作者:搜寻专家 更新时间:2023-10-31 20:25:27 24 4
gpt4 key购买 nike

我尝试了下面的代码:

public class Abc {

private ArrayDescriptor arrayDesc;

void init() {
connection = //create connection
arrayDesc = ArrayDescriptor.createDescriptor("DBTYPE",connection);
}

void m1() {
conn1 = //create connection
ARRAY array_to_pass1 = new ARRAY( arrayDesc , conn1, idsArray1 );
}

void m2() {
conn2 = //create connection
ARRAY array_to_pass2 = new ARRAY( arrayDesc , conn2, idsArray2 );
}

}

此代码给出以下错误:

table.java.sql.SQLException: Missing descriptor at oracle.sql.DatumWithConnection.assertNotNull(DatumWithConnection.java:103)

如何解决?

最佳答案

ArrayDescriptor已弃用。假设您的 connection 对象的类型为 OracleConnection , 尝试使用 createOracleArray相反 - 像这样:

public class Abc {
void init() {
connection = //create connection
}

void m1() {
conn1 = //create connection
array array_to_pass1 = conn1.createOracleArray(arrayDesc, idsArray1);
}

void m2() {
conn2 = //create connection
array array_to_pass2 = conn2.createOracleArray(arrayDesc, idsArray2);
}
}

注意:使用此方法,数组的类型将为 java.sql.Array 而不是 oracle.sql.ARRAY

关于java - 如何复用 ArrayDescriptor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48336475/

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