Android 按id检索记录不起作用?
我试图根据用户id显示记录,但仅显示上次更新的记录无法根据id显示整个记录我如何实现这一点让我发布代码: 下面是我根据id检索记录的代码:Android 按id检索记录不起作用?,android,sqlite,Android,Sqlite,我试图根据用户id显示记录,但仅显示上次更新的记录无法根据id显示整个记录我如何实现这一点让我发布代码: 下面是我根据id检索记录的代码: public List<Model_Task_List> getTaskListById(String id) { SQLiteDatabase db = this.getReadableDatabase(); Model_Task_List model_task_list=new Model_Task_Lis
public List<Model_Task_List> getTaskListById(String id) {
SQLiteDatabase db = this.getReadableDatabase();
Model_Task_List model_task_list=new Model_Task_List();
String selectQuery = " SELECT " +
Model_Task_List.KEY_id + "," +
Model_Task_List.KEY_username + "," +
Model_Task_List.KEY_subject + "," +
Model_Task_List.KEY_task + "," +
Model_Task_List.KEY_taskid +"," +
Model_Task_List.KEY_owner+
" FROM " + Model_Task_List.KEY_table + " WHERE " + Model_Task_List.KEY_owner + "= " + id + "";
List<Model_Task_List>listobj=new ArrayList<Model_Task_List>();
Model_Task_List modelobj=new Model_Task_List();
Cursor cursor = db.rawQuery(selectQuery, null);
if (cursor.moveToFirst()) {
do {
modelobj.setId(Integer.parseInt(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_id))));
modelobj.setUserName(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_username)));
modelobj.setSubject(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_subject)));
modelobj.setTaskStatus(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_task)));
modelobj.setTaskID(cursor.getShort(cursor.getColumnIndex(Model_Task_List.KEY_taskid)));
modelobj.setUserid(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_owner)));
listobj.add(modelobj);
}while (cursor.moveToNext());
}
return listobj;
}
我如何对这个问题进行排序?无论我是否正确处理这个问题这个问题仅限于您的模型类,您只创建了一个模型类对象。 如果检索所有数据库记录,则每次获取记录时都创建一个新对象
if (cursor.moveToFirst()) {
do {
modelobj=new Model_Task_List(); modelobj.setId(Integer.parseInt(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_id))));
modelobj.setUserName(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_username)));
modelobj.setSubject(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_subject)));
modelobj.setTaskStatus(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_task)));
modelobj.setTaskID(cursor.getShort(cursor.getColumnIndex(Model_Task_List.KEY_taskid)));
modelobj.setUserid(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_owner)));
listobj.add(modelobj);
}while (cursor.moveToNext());
}
该问题仅限于您的模型类,您只能创建一个模型类对象一次。 如果检索所有数据库记录,则每次获取记录时都创建一个新对象
if (cursor.moveToFirst()) {
do {
modelobj=new Model_Task_List(); modelobj.setId(Integer.parseInt(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_id))));
modelobj.setUserName(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_username)));
modelobj.setSubject(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_subject)));
modelobj.setTaskStatus(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_task)));
modelobj.setTaskID(cursor.getShort(cursor.getColumnIndex(Model_Task_List.KEY_taskid)));
modelobj.setUserid(cursor.getString(cursor.getColumnIndex(Model_Task_List.KEY_owner)));
listobj.add(modelobj);
}while (cursor.moveToNext());
}
如果你的
id
是字符串格式,你需要用引号括起来。如果你的id
是字符串格式,你需要用引号括起来。非常感谢节省了我的时间非常感谢节省了我的时间