java Dao代码:-
String[] stringsArray = new String [] { "LC1", "LC2", "LC3" };
CallableStatement cs = sqlpluscon.prepareCall("{call Get_Machine_Wise_OEE(?,?,?,?)}");
cs.setString(1, machineparameter.getStartDate());
cs.setString(2, machineparameter.getEndDate());
cs.setString(3, machineparameter.getShift());
cs.setArray(4, stringsArray); /* want to pass String Array */错误:-
类型setArray(int,PreparedStatement )中的方法PreparedStatement不适用于参数(int,String[])
详细信息:-使用带有aspen的jdbc连接,在调用变量(而不是数组)时,使用String工作的fine.but无法调用过程。我请您提供解决方案,我已经试了很多次了,还不能打电话。
发布于 2016-07-28 07:17:51
只需更改最后一行,如下所示,其中typeName特定于元素数组包含的类型。如果它的字符串,我们可以传递varchar或text的MySQL。
final java.sql.Array sqlArray = con.createArrayOf(typeName , stringsArray);
cs.setArray(4, sqlArray); https://stackoverflow.com/questions/38628761
复制相似问题