我正在为RC Cars编写Android应用程序.它使用SQLite数据库,并保存汽车的模型,汽车名称和其他变量.
这是我的代码:
public Cursor fetchAllNotes() { return mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_TITLE, KEY_CARNAME, KEY_TRACKNAME, KEY_TRACKSIZE, KEY_TRACKTRACTION, KEY_TRACKSURFACE, KEY_BODYTYPE, KEY_COMMENTS}, KEY_CARNAME + "=" + "'MTX-4'", null, null, null, null); }
如何仅显示carname列中指定的特定型号汽车的记录?到目前为止,我只能通过使用'MTX-4'
或其他一些文字字符串来过滤结果.我需要能够用字符串变量替换它String carName
或类似的东西,所以我可以通过用户定义的carname进行过滤.
将"MTX-4"替换为"?" 作为参数变量.然后将selectionArgs参数(在您的示例中为null)替换为您的参数列表,例如new String [] {"MTX-4"}或new String [] {carName}
以下代码段与您的代码相同.
return mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_TITLE, KEY_CARNAME, KEY_TRACKNAME, KEY_TRACKSIZE, KEY_TRACKTRACTION, KEY_TRACKSURFACE, KEY_BODYTYPE, KEY_COMMENTS}, KEY_CARNAME + "=" + "?", new String[]{"MTX-4"}, null, null, null);