SQLite选择不使用Where子句

时间:2014-06-23 20:31:08

标签: java android sqlite

我正在尝试从我的SQLite表中获取数据,我正在运行此查询:

SQLiteDatabase db = this.getWritableDatabase();
// int memberId = 1234
Cursor rs = db.rawQuery("select username, password from users where memberId = ? limit 1", new String[]{String.valueOf(memberId)});
System.err.println("Rows: " + rs.getCount());

输出为Rows: 0

但是当我运行这个查询时:

Cursor rs = db.rawQuery("select username, password, memberId from users limit 1", new String[]{});
rs.moveToFirst();
System.err.println(rs.getString(0) + ":" + rs.getString(1) + ":" + rs.getString(2));

我得到username:xxxx:1234

为什么我添加一个where条款会破坏?

1 个答案:

答案 0 :(得分:1)

正如@Ryan Naddy指出的那样 - 第一部分和第二部分之间的区别在于你调用“moveToFirst()” - 你需要这样做,因为光标位于第一个条目之前。

请参阅此article