Как получить номер конкретного имени в sqlite таблице по запросу - PullRequest
1 голос
/ 25 сентября 2019

У меня есть таблица, в которой хранятся имя и количество людей.Теперь я хочу создать метод из вспомогательного класса sqlite, который будет возвращать номер конкретного человека, чье имя я передам в методе

Что-то не так с моим кодом.

Вот мойкод

public String fetchGroup(SQLiteDatabase inDatabase,  String valueCheck){

    String query = "SELECT * FROM groups WHERE groupname='" + valueCheck;

    Cursor  cursor = inDatabase.rawQuery(query,null);
    String place = cursor.getString(cursor.getColumnIndex("contactid"));
       return place;

Ответы [ 2 ]

0 голосов
/ 25 сентября 2019

Обязательно используйте команду cursor.moveToFirst() перед чтением данных.

В противном случае, вместо подсчета числа людей в Java, вы можете просто изменить свой запрос, чтобы возвращалось только это число.

Как то так:

public String fetchGroup(SQLiteDatabase inDatabase,  String valueCheck){

    String query = "SELECT COUNT(id) FROM groups WHERE groupname=\"" + valueCheck + "\"";

    Cursor  cursor = inDatabase.rawQuery(query, null);
    cursor.moveToFirst();
    int place = cursor.getInt(0);
    return String.valueOf(place);
}
0 голосов
/ 25 сентября 2019

После выполнения запроса выполните

 int count = 0;
 while (cursor.moveToNext()) {
    // increment variable
    count++;
}

. После итерации вы получите номер счета

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...