Bonjour,

Je suis en train de développer une application qui a besoin de stocker en DB une partie des contacts de l'utilisateurs. J'ai choisi de ne stocker que les identifiants des contacts, le reste étant stocké dans les DBs d'Android.

J'utilise la requête suivante pour récupérer le Curseur qui va bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT _id, display_name FROM view_contacts_restricted WHERE (contact_id IN (SELECT DISTINCT contact_id FROM dudes WHERE _id = 4));
Et je reçois l'erreur suivante :
ERROR/AndroidRuntime(272): Caused by: android.database.sqlite.SQLiteException: no such table: dudes

J'ai vérifié, ma table existe bien, elle est juste dans ma BDD à moi, et pas celle d'Android qui contient les contacts. Je pense que le souci vient de là.

Est-ce possible de corriger cette requête pour faire ce que je veux ? Ou dois je procéder en 2 temps ?

Voici mon code actuel :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
String inString = SQLiteQueryBuilder.buildQueryString(true, DB_DUDE_TABLE, new String[] {KEY_CONTACT_ID}, KEY_BILL_ID + " = " + id, null, null, null, null); 
 
Cursor cursor = mCtx.getContentResolver().query(uri, projection, Data.CONTACT_ID + " IN (" + inString + ")", null, null);
Merci !