我正在尝试使用 UCanAccess 来查询 MS Access .accdb 文件。一切都很好,除非我查询多值字段。例如,那些在 MS Access 设计视图中表字段的 Lookup 选项卡的 Row Source 中有条目的条目。当我尝试输出结果时,我的代码崩溃了:
ResultSet rslt = stmt.executeQuery("SELECT [singleValue], [multiValue] FROM [TableName];");
int count = 0;
while (rslt.next())
System.out.println(count++ + "\t" + rslt.getString(1) + "\t" + rslt.getString(2));
ResultSet 可以正常返回,并且 singleValue 可以正常打印,但是如果我尝试从 ResultSet 打印 multiValue,则会引发以下错误:
线程“main”net.ucanaccess.jdbc.UcanaccessSQLException 中的异常:转换中的数据类型不兼容:从 SQL 类型 OTHER 到 java.lang.String,值:org.hsqldb.types.JavaObjectData 的实例
我尝试查询存储在 .accdb 中的查询,但这不起作用,因为它只是触发原始查询,并返回相同的 ResultSet。
我错过了一些简单的东西还是 UCanAccess 无法处理的东西?