Пример подсчета SQLite - PullRequest
       2

Пример подсчета SQLite

3 голосов
/ 29 апреля 2011

Я использую SQLite в Android. У меня есть запрос, запрос выполнен и как распечатать счет с курсора.

Cursor dataCount = mDb.rawQuery("select count(*) from " + DATABASE_JOURNAL_TABLE, null);

У меня нет записи в таблице.

Ответы [ 2 ]

8 голосов
/ 09 июля 2013

У вас уже есть правильный подход.

Cursor cursor = database.rawQuery("select count(*) from " + DATABASE_JOURNAL_TABLE, null);

// ensure there is at least one row and one column
if (cursor.getCount() > 0 && cursor.getColumnCount() > 0) {
    cursor.close();
    return cursor.getInt(0);
} else {
    cursor.close();
    return 0;
}

Вы должны убедиться, что есть хотя бы 1 строка и 1 столбец, если вы предоставите таблицу, которая еще не существует, столбец для доступа не будет, а cursor.getInt (0) вызовет исключение.

источник: https://github.com/samkirton/SQLKing

4 голосов
/ 29 апреля 2011

Может быть getInt (index) как

cursor.getInt(1); // this is for example, you have to adjust index in your code

Также в курсоре есть встроенная функция getCount () для возврата номера строки, поэтому также можно сделать так:

// assuming your table has `id` column as primary key or unique key.
Cursor dataCount = mDb.rawQuery("select id from " + DATABASE_JOURNAL_TABLE, null);
dataCount.getCount();

Для получения дополнительной информации см. Документ Android разработчика для Курсора .

...