如何使用Sugar ORM的count()方法?

时间:2015-10-28 11:39:48

标签: android sugarorm android-database

我的Android应用中有一个Email_Message类,用于存储电子邮件。它有一个名为“messageType”的int字段。 messageType == 1表示它是收件箱电子邮件,messageType == 2表示它是已发送的电子邮件。

我刚开始使用Sugar ORM,我想在课堂上查看我在数据库中存储了多少个收件箱电子邮件。更准确地说,我想检查是否有存储的收件箱电子邮件,决定是否需要从网络或数据库中获取电子邮件。但是如果状态有效,我就无法做到这一点:

if((int)Email_Message.count(Email_Message.class, "messageType = ?", "1") == 0){} //no emails stored

它说第三个参数需要是一个String [],我不明白我应该把它放在那里,我能找到的唯一例子是this one。 (long numberOfAuthors = Author.count(Author.class,“full_name =?”,“Timothy”);)

有人可以向我解释如何正确使用计数方法吗?

编辑:我现在必须离开,但稍后我会检查并更新问题String[] test = {"1"}; if((int)Email_Message.count(Email_Message.class, "messageType = ?", test) == 0) 诀窍与否。

2 个答案:

答案 0 :(得分:3)

if((int)Email_Message.count(Email_Message.class, "message_type = 1", null) == 0)

这对我有用,原来Sugar ORM也喜欢重命名这样的变量。

答案 1 :(得分:2)

使用String []的一个例子:

String[] vals = {
    String.valueOf(LocalRecord.ImageState.Raw)
};
long n_count = HourFolder.count(HourFolder.class, "state = ?", vals);