如何使用Jackess从查询而不是从表中检索数据



我有一个Access数据库,为了让工作更容易,我对数据库进行了查询。如何从查询中获取数据而不是从表中获取数据?

为了从表格中获取数据,我使用了以下代码:

Table table = db.getTable("matchTable");
Cursor cursor = CursorBuilder.createCursor(table);
while (cursor.findNextRow(Collections.singletonMap("idMatch", 15))) {
       Row row = cursor.getCurrentRow();
       ...
}

根据Jackess常见问题解答(特别是此处):

Jackess可以执行SQL查询吗?

自1.1.19版本起,Jackess能够读取保存在Access数据库中的查询(即解释存储在系统查询表中的数据)。但是,Jackess不具备执行这些查询的能力。

这意味着Jackess可以检索与Access中保存的查询相关联的SQL代码,但Jackess不能执行该SQL代码(或返回其结果)。

换句话说,如果我们在Access中有一个名为[MySavedQuery]的已保存查询,那么Jackess可以检索包含SQL命令的String,例如

SELECT * FROM Customers WHERE City='wherever'

但是jaccess无法执行该命令来实际返回该查询的结果。此外,Jackess方法db.getTable()可以打开Access,但不能像打开表一样打开已保存的查询。

但是,UCanAccess可以执行保存的Access查询并返回查询结果。也就是说,UCanAccess可以进行

SELECT * FROM MySavedQuery

相关内容

  • 没有找到相关文章

最新更新