Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android查询错误_Android_Database_Sqlite - Fatal编程技术网

Android查询错误

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

我想访问我的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 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-那是因为他在入职后漏掉了+。