我正在使用ORMLite& SQLite作为我的数据库,我正在开发一个Android应用程序。
1)我在Foreign-Collection对象中搜索特定对象,如下所示。
Collection<PantryCheckLine> pantryCheckLinesCollection = pantryCheck.getPantryCheckLines();
Iterator iterator = pantryCheckLinesCollection.iterator();
while (iterator.hasNext()) {
pantryCheckLine = (PantryCheckLine) iterator.next();
//i'm searching for a purticular object match
}
2)或者我可以直接从相关表中查询并确定该项目。
我要问的是这两种方法会更快一些吗?
答案 0 :(得分:2)
取决于你的具体情况。
如果您的ForeignCollection
被急切地提取,那么您的循环将不必执行任何数据库事务,并且对于小型集合,可能会比执行查询更快。
但是如果你的集合延迟加载,那么遍历集合将会回到数据库,所以你也可以进行精确的查询。