【发布时间】:2019-05-14 17:06:57
【问题描述】:
我想在我的 jdbc 查询中使用 H2 数据库放入一个整数数组。
Integer[] list = new Integer[]{1,2,3};
String query = "SELECT EXAMPLE FROM DATA WHERE EXAMPLE IN (?)";
PreparedStatement ps = GestionBDD.getConexionBD().prepareStatement(query);
Array array = GestionBDD.getConexionBD().createArrayOf("int", list);
ps.setArray(1, array);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
// DO THINGS
}
但是不起作用,我得到了这个异常:org.h2.jdbc.JdbcSQLException: Data conversion error conversion "(1,2,3)"; SQL语句:
我正在使用 H2 数据库。 你能帮帮我吗?
【问题讨论】:
-
检查一下,可能对你有帮助。 stackoverflow.com/questions/37693849/…
-
数据库中定义为 INT 或 VARCHAR 的示例是什么?
-
这样:如果不存在数据则创建表(示例 int auto_increment)
-
你可以试试
GestionBDD.getConexionBD().createArrayOf("INTEGER", list); -
我也试过了,还是不行。看来这不是错误