无法识别的令牌 AND

Unrecognized token AND

我在下一个查询中遇到问题:

这是我的数据数组

 String[] columns = new String[]
{ KEY_ROWELEMENTID, KEY_STUDYID,  KEY_ELEMENTCODE, KEY_ELEMENTNAME};

我为这个数组创建了一个游标,其中: KEY_ELEMENTCODE 列等于可变结果 和 KEY_STUDYID 等于可变结果 AND

 Cursor c = 
ourDatabase.query(DATABASE_TABLEELEMENTS, columns,  KEY_ELEMENTCODE + "=" + elementRequest 
 + "AND" + KEY_STUDYID + 
"=" + idStudy, null, null, null, null);

有什么问题?我有调试,所有变量都有正确的值

谢谢

没有看到

的输出
KEY_ELEMENTCODE + "=" + elementRequest + "AND" + KEY_STUDYID + "=" + idStudy

我猜你只需要更换

"AND"

" AND "

您缺少 AND 周围的空格。

  • " 和 " +

是的,应该有 space 作为“AND”, 还有一件事,如果您要比较整数值,请使用此行,

    Cursor c = ourDatabase.query(DATABASE_TABLEELEMENTS, columns,  
        KEY_ELEMENTCODE + "=" + elementRequest
                + " AND " + KEY_STUDYID +
                "=" + idStudy, null, null, null, null);

如果要比较字符串值,则应使用单引号,

    Cursor c = ourDatabase.query(DATABASE_TABLEELEMENTS, columns,
        KEY_ELEMENTCODE + "=" +"'"+elementRequest+"'"+
                + " AND " + KEY_STUDYID +
                "=" + "'"+idStudy+"'", null, null, null, null);

让我知道它是否适合你...

试试在"AND"前后加上space,写成“AND”,希望能解决你的问题:)