Android查询错误
我想访问我的people表的status=100和id=incomingid。我写了上面截取的代码,但下面有一个错误。。。。这个问题怎么了?你能帮帮我吗Android查询错误,android,database,sqlite,Android,Database,Sqlite,我想访问我的people表的status=100和id=incomingid。我写了上面截取的代码,但下面有一个错误。。。。这个问题怎么了?你能帮帮我吗 Cursor cursor = db.rawQuery("SELECT id,lastname,status FROM people WHERE " + "id = "+ IncomingiD +" FROM people WHERE status =100 ); ",null); 查询应为 E/Error(996): Error whil
Cursor cursor = db.rawQuery("SELECT id,lastname,status FROM people WHERE " + "id = "+ IncomingiD +" FROM people WHERE status =100 ); ",null);
查询应为
E/Error(996): Error while openining peopleandroid.database.sqlite.SQLiteException: near "FROM": syntax error: , while compiling: SELECT id,lastname,status FROM people WHERE id = 1 FROM places WHERE status =100 );
您在查询中有两次“发件人”部分:
首先,在select和where子句之间的正确位置
然后,第二次,在where子句中的第一个条件之后。
另外,请注意,查询中有两个where,这两个条件应该用and分隔,而不是第二个where
哦,而且在你的查询结束时你似乎还有一个结束语
基本上,您的查询如下所示:
Cursor cursor = db.rawQuery("SELECT id,lastname,status FROM people WHERE " + "id = "+ IncomingiD +"AND status =100 ); ",null);
SELECT id,lastname,status
FROM people
WHERE id = ....
and status = 100
但应该是这样的:
SELECT id,lastname,status
FROM people
WHERE id = ....
FROM people
WHERE status =100
);
最后,我猜您的Java代码应该是这样的:
Cursor cursor = db.rawQuery("SELECT id,lastname,status FROM people WHERE " + "id = "+ IncomingiD +"AND status =100 ); ",null);
SELECT id,lastname,status
FROM people
WHERE id = ....
and status = 100
你的问题是错误的。sql语句中只能有一个FROM 试试这个:
Cursor cursor = db.rawQuery("SELECT id, lastname, status FROM people WHERE id = " + IncomingiD + " AND status = 100",null);
@Co Koder-那是因为他在入职后漏掉了+。