在名字表中有3个名字:Allakhazam, Beatbox 和 Cunning
public Cursor fetchNamesByConstraint(String filter) {
mDb.query(true, DATABASE_NAMES_TABLE, new String[] { KEY_ROWID,
KEY_NAME }, KEY_NAME + " LIKE ?",
new String[] { filter }, null, null, null,
null);
return mCursor;
}
我使用A作为filter调用函数,但是光标返回一个0计数,这时候本应该是返回1的。如何修改代码呢?
这个语句将会返回所有的记录,这些记录的 keyname 是指定的字符串。如果你使用 wild card,然后就可以获得预期结果:
mDb.query(true, DATABASE_NAMES_TABLE, new String[] { KEY_ROWID,
KEY_NAME }, KEY_NAME + " LIKE ?",
new String[] { filter+"%" }, null, null, null,
null);
在filter 中会显示所有的记录
mDb.query(true, DATABASE_NAMES_TABLE, new String[] { KEY_ROWID,
KEY_NAME }, KEY_NAME + " LIKE ?",
new String[] {"%"+ filter+ "%" }, null, null, null,
null);