首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SugarORM偏移量不工作

SugarORM偏移量不工作
EN

Stack Overflow用户
提问于 2016-10-21 14:49:06
回答 1查看 275关注 0票数 0

我用SugarORM做我的安卓应用程序。我想从SQLite DB加载消息,但需要一个偏移量。

因此,我加载消息5-15类似于分页。

不幸的是,偏移功能似乎不像预期的那样工作。我写道:

代码语言:javascript
复制
query = Select.from(Message.class)
     .where(Condition.prop("MESSAGES").eq(Long.toString(getId())))
                        .orderBy("timestamp DESC")
                        .limit("5")
                        .offset("10");
query.list();

但这只给了我5个元素的限制,但不使用任何偏移量。

如果我将查询调用参数化如下:

代码语言:javascript
复制
List<Message> messages = getAllMessagesQuery.offset("5").list();

偏移不起作用了。

我做错了什么吗?我使用当前的SugarORM版本1.5

(编译‘com.github.satyan:砂糖:1.5’)

说明工作偏移功能。所以这不应该是问题所在。

有什么办法让这件事成功吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-24 12:32:55

嗯,不确定这是最好的方法,但至少它是这样工作的。如果我把简短的版本加到极限中,事情就会好起来了。因此,使用这样的查询:

代码语言:javascript
复制
List<Message> messages = getAllMessagesQuery.limit("5,10").list();

给我10条带有5条消息偏移的消息。

如果太脏,则原始查询也会正常工作。所以你写:

代码语言:javascript
复制
List<Message> messages = Chat.findWithQuery(Message.class, "Select * from Message where Chat = ? ORDER BY timestamp DESC LIMIT 10 OFFSET 5", getId().toString());

仍然不知道如何直接使用偏移参数,但至少它是这样工作的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40179690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档