IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Problème de requête BDD SQLite


Sujet :

Android

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 33
    Points : 15
    Points
    15
    Par défaut Problème de requête BDD SQLite
    j ai cette methode chequier qui récupère la valeur du champ interdi_cheq (soit 0 ou 1) qui est de type int, le pb c'est que j ai une erreur indiquant que le champ interdiè_cheq n'existe pas alr qui'il existe
    voila la methode qui contient la requete
    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
    18
    19
    20
     
    public String chequier(String numcpte,String logincheq){
     
    		 String kk=null;
    			// bdd.execSQL(" FOREIGN_KEYS PRAGMA = ON ");
    			 Cursor cursor =db.rawQuery(" select "  +  Database.COMPTE_TABLE_NAME + " . " + Database.COMPTE_CHEQ + " AS interdi_cheq"+","+ Database.COMPTE_TABLE_NAME + " . " + Database.COMPTE_ID + " AS _id" + "from" + CLIENTS_TABLE_NAME +","+ COMPTE_TABLE_NAME +
    			 		  " where " + Database.COMPTE_TABLE_NAME +"."+ Database.COMPTE_NCP + " = '" + numcpte + "'"
    			 				+ " and " + Database.CLIENTS_TABLE_NAME +"."+ Database.CLIENTS_LOGIN + " = '" + logincheq + "'" + " and " + Database.CLIENTS_TABLE_NAME +" . "+ Database.CLIENTS_CLT+ "=" +Database.COMPTE_TABLE_NAME + "."+ Database.COMPTE_CLI,null);
    			if (cursor!=null){
    			 if (cursor.moveToFirst()){
    			   do
    			   {
    				   kk=cursor.getString(cursor.getColumnIndex("interdi_cheq"));
    			   }while (cursor.moveToNext());
    			   }
    			   }
    			cursor.close();
    			return kk;
     
    	 }
    elle retourne un string QUE je convertis dans mon activité (DemandeChequier)en int puis je teste sa valeur

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
     
           private OnClickListener validerListener = new OnClickListener() {
       	    @Override
       	    public void onClick(View v) {
     
     
       	       chaine1 = numcpte.getText().toString();//je recupere le numero de compte pr tester la valeur du champ interdi_cheq correspondant
     
       		Database dbUser = new Database (DemandeChequier.this);
    		dbUser.open();
     
     
     
     
    		            if((chaine1.equals(""))){
    					    		message();
     
    					    	 }
     
     
     
     
    		            try{  
    			    	       if(chaine1.length() > 0)
    							{  
     
    								if(dbUser.Auth_compte(chaine1) ) //si la valeur (numero de compte) existe ds la bdd
    								{	
     
     
    							           String soldee=dbUser.chequier(chaine1,agec_de_chequier);
    								   int ss=Integer.parseInt(soldee);
    								     if (ss==0)
    											Toast.makeText(DemandeChequier.this,"Demande eregistrée", Toast.LENGTH_LONG).show();
    									else 
    										Toast.makeText(DemandeChequier.this,"Demande refusée", Toast.LENGTH_LONG).show();
     
     
    								}else{
    									Toast.makeText(DemandeChequier.this,"Ce numero de compte n'existe pas", Toast.LENGTH_LONG).show();
    								}
    			    	      dbUser.close();
    							}}
     
    						catch(Exception e)
    						{
    							Toast.makeText(DemandeChequier.this,e.getMessage(), Toast.LENGTH_LONG).show();
    						}
     
     
    		            dbUser.close();
     
       	    }}
       	 ;
    et en plus qd j insére un compte (statiquement) avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Compte compte1 = new  Compte("9000","courant","20/04/2015",3000,700,1);
    		  
    		  clientbBdd.open();
    		  clientbBdd.insertCompte(compte1);
                      clientbBdd.();
    le dernier champ c'est "interdi_cheq" je ne sais pas pourquoi j'insére un "1" mais en consultant la bdd je trouve "0"
    pouvez vous m'aider svp

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations forums :
    Inscription : Juillet 2012
    Messages : 200
    Points : 342
    Points
    342
    Par défaut
    Bonjour. Je pense que l'erreur se situe ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    " AS _id" + "from"...
    Il manque un espace entre AS _id et le mot clé from.
    Ceci dit, je pense qu'il faudrait nommer les noms de table dans ta requête. Ta requête n'est pas facile à lire. Et pense à utiliser des requêtes paramétrées.

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 33
    Points : 15
    Points
    15
    Par défaut
    merci de me répondre
    j ai laissé des espaces sans succès, j ai tjr l'erreur dans un toast en appuyant sur le bouton valider"no such colomn compte.interdi_cheq:,while compiling: select ....."
    et dans le logcat en vert:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    04-25 13:01:03.761: I/Database(32282): sqlite returned: error code = 1, msg = no such column: compte.interdi_cheq

  4. #4
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 33
    Points : 15
    Points
    15
    Par défaut
    j'ai réglé le pb c'était les espaces effectivement merci

  5. #5
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par torres02 Voir le message
    j'ai réglé le pb c'était les espaces effectivement merci
    Pense à marquer RESOLU ton post dans ce cas.

    Christian,

Discussions similaires

  1. [Débutant] Problème de requête SQLite
    Par firewire2 dans le forum C#
    Réponses: 20
    Dernier message: 20/07/2012, 09h22
  2. problème requête BDD entre test local et test distant
    Par illidan05 dans le forum Administration
    Réponses: 1
    Dernier message: 02/07/2012, 11h28
  3. Problème BDD SQLite
    Par Karly dans le forum Android
    Réponses: 2
    Dernier message: 18/03/2012, 12h12
  4. problème exécution requête BDD
    Par styne dans le forum C#
    Réponses: 1
    Dernier message: 17/11/2010, 00h49
  5. [MySQL] problèmes de requêtes BDD
    Par jenga dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 10/02/2006, 15h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo