我需要从表中的特定列中获取值并将它们放入数组中。
我正在考虑使用PL / SQL存储过程,然后在java中调用该过程并使用类似以下内容:
CallableStatement.getArray(2, myArray);
我正在考虑使用类似的东西:
SELECT column1
INTO myVARRAY
FROM table1
WHERE table_id = t_id;
在存储过程中
但这没用
最佳答案
假定myVARRAY
的类型为varchar2
。在这种情况下,您可以尝试类似
p_col VARCHAR2 (32);
SELECT column1
INTO p_col
FROM table1
WHERE table_id = t_id;
然后将p_col添加到数组中
myVARRAY.EXTEND;
myVARRAY (1) := p_col;
RETURN myVARRAY;
从Java调用您的数组
callablestatement.registerOutParameter(2, OracleTypes.ARRAY, "MYVARRAY");
希望这会有所帮助,否则,请提供有关您的功能/过程以及所得到的错误类型的更多信息。