我正在尝试使用sql数组。我已经使用以下方法将字符串数组插入数据库:
Array myArray= conn.createArrayOf("text", stringArray);//stringArray:List<String>
preparedStatement.setArray(1, myArray);它将被成功地写成
{"ddd ggg",ll}
但是我看不懂结果数组!当我试图从数据库中获取这个数组时,例外情况是:
Couldn't execute query
org.postgresql.util.PSQLException: No results were returned by the query.
at org.postgresql.jdbc2.TypeInfoCache.getPGArrayElement(TypeInfoCache.java:390) ~[postgresql-9.1-901.jdbc4.jar:na]
at org.postgresql.jdbc2.AbstractJdbc2Array.buildArray(AbstractJdbc2Array.java:323) ~[postgresql-9.1-901.jdbc4.jar:na]
at org.postgresql.jdbc2.AbstractJdbc2Array.getArrayImpl(AbstractJdbc2Array.java:149) ~[postgresql-9.1-901.jdbc4.jar:na]
at org.postgresql.jdbc2.AbstractJdbc2Array.getArray(AbstractJdbc2Array.java:110) ~[postgresql-9.1-901.jdbc4.jar:na]这是我的代码:
while (rs.next()) {
//query: "SELECT * FROM TABLE_NAME "
Array a= rs.getArray(COL_NAME);
String[] myArray = (String[]) a.getArray();
}如何从数据库中获取myArray?
发布于 2017-11-23 12:55:04
我在试图从Postgresql "text“列读取String[]时出错。将列从"text“改为"text[]”解决了这个问题。
https://stackoverflow.com/questions/29985122
复制相似问题