我正在尝试使用以下查询从我的Android SQLite数据库中获取数据。
Cursor cursor = db.rawQuery("SELECT * FROM Task where taskId = 1 ", null);
然而,尽管光标为空,仍存在值为1的taskId。
如果我这样做:
Cursor cursor = db.rawQuery("SELECT * FROM Task", null);
我的光标包含所有值,包括一个taskId的值为1。
我已经尝试了以下所有命令,但都没有成功:
Cursor cursor = db.rawQuery("SELECT * FROM Task where taskId = " + 1, null);
Cursor cursor = db.rawQuery("SELECT * FROM Task where taskId = " + "'1'", null);
Cursor cursor = db.rawQuery("SELECT * FROM Task where taskId = ?", new String[]{"1"});
taskId是一个整型(Integer)的变量,试过使用文本(Text)类型代替,但同样不起作用。
有什么我没有考虑到的吗?非常感谢帮助!
编辑: 创建数据库的代码如下:
CREATE TABLE Task + " (" +
_id INTEGER PRIMARY KEY," +
"taskDescription TEXT, +
"taskId INTEGER," +
"taskName TEXT" +
"PreviousTaskID " + "REFERENCES " + "PreviousTasks " +
"(" + PreviousTasks._ID + "))"