Android 如何使用糖ORM';s count()方法?

Android 如何使用糖ORM';s count()方法?,android,sugarorm,android-database,Android,Sugarorm,Android Database,在我的android应用程序中,我有一个电子邮件类来存储电子邮件。它有一个名为“messageType”的int字段。messageType==1表示这是一封收件箱电子邮件,messageType==2表示这是一封已发送的电子邮件 我刚开始使用Sugar ORM,我想在一个类中检查我在数据库中存储了多少收件箱电子邮件。更准确地说,我想检查我是否有收件箱中存储的电子邮件,决定是否需要从网络或数据库中获取电子邮件。但如果声明有效,我无法做到这一点: if((int)Email_Message.cou

在我的android应用程序中,我有一个电子邮件类来存储电子邮件。它有一个名为“messageType”的int字段。messageType==1表示这是一封收件箱电子邮件,messageType==2表示这是一封已发送的电子邮件

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

if((int)Email_Message.count(Email_Message.class, "messageType = ?", "1") == 0){} //no emails stored
它说第三个参数必须是字符串[],我不明白我应该在那里放什么,我能找到的唯一用法示例是。(long numberOfAuthors=Author.count(Author.class,“全名=?”,“Timothy”);)

有人能给我解释一下如何正确使用计数法吗

编辑:我现在必须走了,但稍后我会检查并更新问题,如果
String[]test={“1”};
if((int)Email\u Message.count(Email\u Message.class,“messageType=?”,test)=0)
不管你玩不玩这个把戏

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

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

使用字符串[]的一个示例:

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

您不应该养成为查询文本中的搜索指定右值的习惯,请使用?运算符和一组值,如@suyang的安全响应中所示。