我是android新手,在这里我需要获取Status为“ Active”的所有列值。但是我无法理解SQLite查询的形成。
它与MSSQL查询略有不同。
这是我的查询,错误为“无法解析符号”
Cursor cursor = sqLiteDatabase.rawQuery("SELECT * FROM " + TABLE_NAME, "WHERE ALARM_STATUS = + "Active" ");
请告诉我我在哪里弄错了。
答案 0 :(得分:1)
据我所知,您的查询中存在 3 个错误:
Cursor cursor = sqLiteDatabase.rawQuery("SELECT * FROM " + TABLE_NAME, "WHERE ALARM_STATUS = + "Active" ");
应该是
Cursor cursor = sqLiteDatabase.rawQuery("SELECT * FROM " + TABLE_NAME + " WHERE ALARM_STATUS = 'Active'");
逗号误导了编译器,使您认为您想使用替代语法,该语法需要一组参数。
此外,在WHERE子句之前缺少强制性空格。
其余的查询字符串是错误的(将您的语法进行比较)。
答案 1 :(得分:1)
尝试一下...
Cursor cursor= sqLiteDatabase.rawQuery("SELECT ALARM_STATUS FROM TABLE_NAME WHERE ALARM_STATUS= ?", new String[] {"Active"});