Les sous_requêtes en SQLite

Les sous_requêtes en SQLite - Divers - Programmation

Marsh Posté le 08-07-2013 à 13:13:58    

J'ai écrit dans mon application mobile avec android une méthode qui contient la sous requête que je voulais faire  
Voici la méthode :
    public double getProductCatNumber(String category_name){
     double nbre=0;
     
     SQLiteStatement  s = database.compileStatement("SELECT COUNT(*) FROM "+ TABLE_PRODUCT + " WHERE " + COL_CATEGORY + " IN (SELECT " +  COL_ID_CATEGORY + " FROM "+
     TABLE_CATEGORY + " WHERE " + COL_CATEGORY_NAME + " = " + category_name);
     
     nbre = s.simpleQueryForLong();
     return nbre;
    }
  Après la compilation, un message d'erreur s'affiche :
07-08 10:32:26.215: E/SQLiteLog(949): (1) near "=": syntax error
07-08 10:56:09.154: E/SQLiteLog(1080): (1) near "=": syntax error
mais cette sous_requête quand je l’écrit dans SQLite database browser il affiche la resultat !!

Reply

Marsh Posté le 08-07-2013 à 13:13:58   

Reply

Marsh Posté le 08-07-2013 à 13:29:02    

essaye ça :
" = '" + category_name +"'"

Reply

Marsh Posté le 08-07-2013 à 13:32:54    

Il affiche toujours un erreur  
07-08 11:31:15.705: E/SQLiteLog(1303): (1) near "'Pizza'": syntax error
07-08 11:31:15.775: E/AndroidRuntime(1303): Caused by: android.database.sqlite.SQLiteException: near "'Pizza'": syntax error (code 1): , while compiling: SELECT COUNT(*) FROM table_product WHERE category IN (SELECT id_category FROM table_category WHERE category_name = 'Pizza'

Reply

Marsh Posté le 08-07-2013 à 13:35:07    

Je n'avais pas vu, tu ne fermes pas ta parenthèse, essaye avec :
" = '" + category_name +"')"

Reply

Marsh Posté le 08-07-2013 à 13:41:45    

Merci bien  
ça fonctionne

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed