我正在尝试获取一个 ResultSet 并将其内容添加到一个字符串数组中。
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery(String.format("SELECT * FROM %s", TABLE_STUDENTS));
Array resultArrayStudent = resultSetStudent.getArray(1);
String[] studentIds = (String[])resultArrayStudent.getArray();
但是我收到以下错误:
java.sql.SQLException: not implemented by SQLite JDBC driver
at org.sqlite.jdbc4.JDBC4ResultSet.unused(JDBC4ResultSet.java:333)
at org.sqlite.jdbc4.JDBC4ResultSet.getArray(JDBC4ResultSet.java:340)
at models.DataSource.classesTakenByEachStudent(DataSource.java:400)
at Main.main(Main.java:81)
什么可能导致抛出此异常?我正在使用 sqlite jdbc 3.18.0。
不,你不能直接获得一个数组,你必须循环抛出你的结果集并获得标识,你可以使用:
ResultSet resultSet = statement.executeQuery(String.format("....", TABLE_STUDENTS));
List<String> list = new ArrayList<>();//create a List
while (resultSet.next()){//loop throw the result set
list.add(resultSetStudent.getString("id"));//use the name of your col you want to get
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句