Sqlite DatabaseHelper. сделать метод возврата - PullRequest
0 голосов
/ 25 марта 2020

Как создать метод в моем классе databaseHelper (который расширяется из SQLiteOpenHelper), который возвращает строку для некоторых данных пользователя.

Например,

public String getUserPassword (String username){

    ..
    return password;
}

Я просто надеваю не знает, как создать Курсор, который ищет имя пользователя (который является первичным ключом) и находит того же пользователя, а затем возвращает его пароль.

1 Ответ

0 голосов
/ 25 марта 2020

Вы можете использовать метод rawQuery() класса SQLiteDatabase, который возвращает Cursor. Для этого метода вы должны передать 2 аргумента:

  • оператор sql, который является SELECT оператором
  • массив, содержащий значение имени пользователя, которое будет использоваться в WHERE пункт для возврата пароля (если он существует).

Этот метод возвращает пароль или null, если имя пользователя не найдено в таблице:

public String getUserPassword (String username){
    String password = null;
    SQLiteDatabase db = this.getWritableDatabase();
    String sql = "SELECT password FROM tablename WHERE username = ?"; 
    Cursor c = db.rawQuery(sql, new String[] {username});
    if (c.moveToNext()) password = c.getString(0);
    c.close();
    db.close();
    return password;
}

В этой строке:

String sql = "SELECT password FROM tablename WHERE username = ?"; 

измените имена таблицы и столбцов на имена, которые есть в вашей базе данных.

...