Bonjour,

Je souhaite faire un SELECT avec jointure, mais le logCat me renvoi
" java.lang.NullPointerException ".

Voici le code de mon IHM:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
//ouverture de la BDD
db = new DBAdapter(getApplicationContext());
//idUtilisateur  = 1
cursor = db.SelectCompteUtilisateur(idUtilisateur);
Maintenant le code pour la persistance :
Le but de mon select est de me retourner une liste de compte d'un utilisateur par rapport a son ID.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
String Query = " SELECT * FROM "+ BDD.TABLE_COMPTES + " C INNER JOIN " + BDD.TABLE_UTILISATEURS + " U ON C.COL_ID_UTILISATEUR = U.COL_ID " + " WHERE U.COL_ID =   " + idUtilisateur;
Cursor cursor = db.rawQuery(Query,null);
//je contrôle si mon cursor est null, mais le code plante avant.
if(cursor == null || cursor.getCount() == 0)
System.out.println(null);
et voici le code de mes deux tables pour la BDD, avec clef étrangère pour faire la liaison :

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
 
"CREATE TABLE " + TABLE_UTILISATEURS + " (" +
    		        "COL_ID INTEGER PRIMARY KEY, " +
    		        "COL_NOM TEXT NOT NULL, " +
		        "COL_PASSWORD TEXT NOT NULL, " +
    		        "COL_MAIL TEXT NOT NULL, " + 
			"COL_ETAT INTEGER NOT NULL);" +
 
" CREATE TABLE " + TABLE_COMPTES + " (" + 
			"COL_ID_COMPTE INTEGER PRIMARY KEY AUTOINCREMENT, " + 
			"COL_ID_UTILISATEUR INTEGER NOT NULL CONSTRAINT fk_utilisateurs_comptes REFERENCES"+ TABLE_UTILISATEURS +  "(COL_ID)," +
		        "COL_BANK TEXT NULL,"+
			"COL_TITRE TEXT NOT NULL," + 
			"COL_DESIGNATION TEXT NULL," + 
		        "COL_SELECT INTEGER NULL,"+
			"COL_TOTAL REAL NULL);" +
merci pour votre aide.