我正在调用一个存储过程,它将输入作为数字数组。
从Groovy方面,我将int []传递给该存储过程。
但是我收到“无效列类型”作为存储过程的结果。
有人可以建议我如何从Groovy端传递一组数字吗?
我在存储过程方面创建的TYPE是; 创建或替换TYPE NUMBER_LIST是数字表;
groovy中的int []是; int [] boxIntArr = new int [5];
我们可以通过boxIntArr代替NUMBER_LIST吗?
答案 0 :(得分:1)
您应该传递java.sql.Array
而不是原始int[]
的实例。您可以使用java.sql.Connection.createArrayOf()
将Java数组转换为SQL数组。
编辑:
Oracle不支持标准Connection.createArrayOf()
方法。改为使用Oracle特定的OracleConnection.createARRAY()
方法。