在我的 activepivot 解决方案中,我有一个包含每笔交易的桌子和货币的商店。
例如:
- 1,欧元,DeskA,10
- 2,欧元,DeskB,18
- 3,英镑,DeskA,17
- 4、usd、DeskA、54
我有很多查询,我想在其中找到包含deskA 和特定但不断变化的货币的所有记录。
要执行这三个查询:
- DeskA, 欧元
- DeskA, 美元
- DeskA, 英镑
我会使用准备好的语句来避免多次解析查询。在 activepivot 中是否有任何等价物?
在我的 activepivot 解决方案中,我有一个包含每笔交易的桌子和货币的商店。
例如:
我有很多查询,我想在其中找到包含deskA 和特定但不断变化的货币的所有记录。
要执行这三个查询:
我会使用准备好的语句来避免多次解析查询。在 activepivot 中是否有任何等价物?
这是您可以定义预编译查询的方式
IRecordQuery query = new RecordQuery("storeName", Equal("attributeUsedForSearchHere").parametrized(0), Arrays.asList("attribute2", "attribute3", "attribute4"));
compiledQuery = datastore.getQueryManager().compile(query);
这就是你可以执行它的方式
ICursor cursor = datastore.getQueryManager().execute(compiledQuery , new Object[] { valueOfAttributeUsedForSearchHere} );
基本上上面你使用attributeUsedForSearchHere 作为一个属性,你将用于基于相等条件的搜索;当然你可能有几个属性。
然后,一旦执行查询,您就可以读取其他属性(属性 2、3 和 4),如下所示:
cursor.getRecord().read("attribute2")