Я создаю диспетчер задач. У меня есть tasklist, и я хочу, когда я нажимаю на конкретное имя списка задач, если он пуст, тогда он переходит в действие Add Task, но если у него есть 2 или 3 задания, то он показывает мне эти задачи в него в виде списка.Как получить количество строк в sqlite с помощью Android?
Я пытаюсь получить счет в списке. мой запрос к базе данных, как:
public Cursor getTaskCount(long tasklist_Id) {
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor= db.rawQuery("SELECT COUNT (*) FROM " + TABLE_TODOTASK + " WHERE " + KEY_TASK_TASKLISTID + "=?",
new String[] { String.valueOf(tasklist_Id) });
if(cursor!=null && cursor.getCount()!=0)
cursor.moveToNext();
return cursor;
}
В Мой деятельности:
list_tasklistname.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0,
android.view.View v, int position, long id) {
db = new TodoTask_Database(getApplicationContext());
Cursor c = db.getTaskCount(id);
System.out.println(c.getCount());
if(c.getCount()>0) {
System.out.println(c);
Intent taskListID = new Intent(getApplicationContext(), AddTask_List.class);
task = adapter.getItem(position);
int taskList_id = task.getTaskListId();
taskListID.putExtra("TaskList_ID", taskList_id);
startActivity(taskListID);
}
else {
Intent addTask = new Intent(getApplicationContext(), Add_Task.class);
startActivity(addTask);
}
}
});
db.close();
}
, но когда я нажав на TaskList имя она возвращается 1, личинка количество задач в нее.
Неэффективно загружать все строки; лучше использовать [queryNumEntries()] (http://developer.android.com/reference/android/database/DatabaseUtils.html#queryNumEntries%28android.database.sqlite.SQLiteDatabase,%20java.lang.String%29). –
Отлично! Это все! – Karra
Спасибо, это помогло вам! – Exceptional