对于
Mysql-
在Mysql中无法设置数组。
取而代之的是,您可以在循环中以相同的方式来查询(?,?,..)值。
String[] Parameter = { "user1", "Administrator" };String query = "select * from userinfo where firstname in (";String temp = "";for(i = 0; i < Parameter.length; i++) { temp += ",?";}temp = temp.replaceFirst(",", "");temp += ")";query = query + temp;PreparedStatement pst = conn.prepareStatement(query);
所以查询变成
select * from userinfo where firstname in (?,?)
并使用循环传递值。
对于
Oracle-
ArrayDescriptor arrayDescriptor = ArrayDescriptor.createDescriptor("CHAR_ARRAY", conn);String[] Parameter = { "user1", "Administrator" };java.sql.Array sqlArray = new oracle.sql.ARRAY(arrayDescriptor, conn, content);..pstmt.setArray(1, sqlArray);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)