2009-10-24 5 views
2

J'ai une requête SQL comme celui-ciComment utiliser rawQuery() dans Android

String loadFav = "SELECT _id, title, name, favorite FROM table1 where favorite= 1 " 
        + "UNION ALL" 
        + "SELECT _id, title, name, favorite FROM table2 where favorite= 1" 
        ; 

    Cursor mCursor = mSQLiteDatabase.rawQuery(loadFav, null); 

J'ai eu une erreur lors exécuter cette requête. Est-ce la bonne structure? Est-ce que quelqu'un peut m'aider?

+0

Il serait utile que vous nous disiez exactement quelle erreur vous obtenez. –

Répondre

8

Toujours dépanner en regardant la chaîne SQL - pas le code qui construit la chaîne SQL!

SELECT _id, title, name, favorite FROM table1 where favorite= 1 UNION ALLSELECT _id, title, name, favorite FROM table2 where favorite= 1 

Vous avez besoin d'un espace entre ALL et le second SELECT.

+0

Oh! Je casse ma requête car trop longue sur l'écran, et j'ai oublié le "space"! Merci beaucoup! – Dennie

+1

Oui, il est regrettable que Java ne permette pas aux littéraux de chaînes de s'étendre sur des lignes. Cela conduit à ce type commun d'erreur. –

Questions connexes