我将从我的Realm表中查询数据时遇到了非常奇怪的行为。
示例
我有一个名为OrderItem
的对象,定义如下:
public class OrderItem extends RealmObject{
@PrimaryKey
@Index
private long id;
//the rest of the fields here
//then getters and setters as usual
}
问题非常不可预测,因为有时候:
RealmResults<OrderItem> items = realm.where(OrderItem.class)
.equalTo("order_id", order_id)
.findAllSorted("id");
返回不完整的结果 - 特别是缺少1行;
这一直困扰着我,因为我无法确定它如何返回这样部分的结果; 不管表中有多少行!
注
一段时间以前,我在我的表中使用了String
类型作为主键,直到我发现当尝试递增值时这是一个多么糟糕的想法; 因此我切换到了long类型,这很好; 除了现在我从上面的查询中得到了部分结果!
我真的很感谢你的帮助! 任何可以帮助我缓解这个问题的想法,提示。
提前致谢!
Eenvincible!
doInBackground()
或类似的地方吗?请展示出现问题的查询周围的代码。 - EpicPandaForcerealm.refresh()
进行测试,然后再回报。 - Eenvincible