Android数据库查询没有返回任何结果

时间:2015-06-08 14:03:52

标签: android sql database sqlite

这是我查询我的android数据库的代码。

int lastID = -1;

String selectQuery = "SELECT * FROM " + TABLE_MAIN + " WHERE " + KEY_ID + " > " + lastID;

Log.i(LOG, selectQuery);
SQLiteDatabase db = this.getReadableDatabase();
Cursor c = db.rawQuery(selectQuery, null);

if (c.moveToFirst())
{
    ...
}
else
{
    return null;
}

由于某种原因每次运行(我已经调试过它),它总是属于if语句的else,我不知道为什么。这让我相信我的查询错了,但我看不出它是怎么回事。我知道表名和列名是正确的,因为它是一个全局定义的变量。有人能发现我的错误吗?谢谢

1 个答案:

答案 0 :(得分:1)

测试您的选择

String selectQuery = "SELECT * FROM " + TABLE_MAIN + " WHERE " + KEY_ID + " > " + "'" + lastID + "'";

某些设备(在某些设备中发生这种情况)sqlite整数仅适用于&gt; 1没有简单的引号,但数字<= 0需要简单的引号。为什么?我不知道。