我想从我的数据库中检索一行,这些行在其日期列中具有特定值,在其总列中具有非零值。
以下代码仅根据日期检索行。
private String[] whereArgs = new String[]{
"12/28/2011"
};
protected Cursor doQuery() {
Cursor result =
db
.getReadableDatabase()
.query(DatabaseHelper.TABLE,
new String[]{"ROWID AS _id",
DatabaseHelper.TAG,
DatabaseHelper.DATE,
DatabaseHelper.EXPRESSION,
DatabaseHelper.TOTAL},
DatabaseHelper.DATE + "=?",
whereArgs,
null, null, DatabaseHelper.DATE);
result.getCount();
return (result);
}
此代码尝试返回具有特定日期的行,并使用“!=”运算符排除值为零的行。
返回一个空光标。
private String[] whereArgs = new String[]{
"12/28/2011",
"0"
};
protected Cursor doQuery() {
Cursor result =
db
.getReadableDatabase()
.query(DatabaseHelper.TABLE,
new String[]{"ROWID AS _id",
DatabaseHelper.TAG,
DatabaseHelper.DATE,
DatabaseHelper.EXPRESSION,
DatabaseHelper.TOTAL},
DatabaseHelper.DATE + "=?"
+ " AND " +
DatabaseHelper.TOTAL + " != ?",
whereArgs,
null, null, DatabaseHelper.DATE);
result.getCount();
Log.v("CURSOR", DatabaseUtils.dumpCursorToString(result));
return (result);
}
这是dumpCursorToString方法的logcat输出,证明它返回空
01-26 15:35:40.920 22138-22153/com.example.ryan.caloriecalc1 V/CURSOR: >>>>> Dumping cursor android.database.sqlite.SQLiteCursor@4c46fc9
<<<<<