Salut à tous,
Bon voilà j'ai créer une base de données Login qui contient un login une adresse mail et mot de passe. Et j'ai une autre base de données qui contient les info d'une personne du staff. J'ai fais 2 curseurs 1 qui va l'autre pas. J'ai un curseur qui reprend toutes les données de la table. Et 1 autre qui va pas qui lui recherche dans la table une adresse mail voici la méthode qui reprend les 2 manière.
Je ne comprends pas cette erreur (peu être il a trouver une ligne ce qui est logique mais le plantage...) pourquoi en parcourant toute la base je trouve mon mail c'est bon et que avec l'autre curseur result ça plante car pour moi je fais la méme chose que sqlite (Certainement plus optimiser etc..) Si vous avez une idée je suis preneur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 public String findNameOfStaffBymail(String mail) { String sql = " SELECT * FROM " + DatabaseStaffHandler.STAFF_TABLE_NAME + " WHERE " + DatabaseStaffHandler.STAFF_MAIL + " = ? "; Cursor result = super.mDb.rawQuery(sql, new String[]{mail}); Cursor data = super.getAllDataTableStaffDatabase(DatabaseStaffHandler.STAFF_TABLE_NAME); String test = result.getString(1); // plante ici avec l'erreur qui arrive et que je ne comprend pas: android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 1 while (data.moveToNext()) { if (data.getString(3).equals(mail)) { viewAll(); return data.getString(1); } }
Partager