dounatt
Messages postés45Date d'inscriptionvendredi 13 mars 2009StatutMembreDernière intervention 3 février 2014
-
7 févr. 2012 à 20:38
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020
-
8 févr. 2012 à 22:04
Bonjour, j'ai le code java suivant:
..................
String[]tab=new String[10];
for (int i=0;i <10;i++){
r31=stm.executeQuery("SELECT objet FROM appels WHERE objet= "+tab[i]);
while (r31.next()){
Z1.add(r31.getString("objet"));
} }
....................
il y a un problème dans la requête, j'ai essayé avec r31=stm.executeQuery("SELECT objet FROM appels WHERE objet like 'tab[i]'"); mais ça maerche pas.
pouvez vous m'aider svp, ça fait 2 jours bloquée ici
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 8 févr. 2012 à 07:56
Bonjour,
Que veux tu dire par "ca marche pas" ? Tu as une exception ? Ou bien les résultats retournés ne sont pas les bons ? Si tu es dans ce cas, explique moi pourquoi ils ne sont pas bons ?
Essaye peut être avec cette requete : "SELECT objet FROM appels WHERE objet='"+tab[i]+"';"
Mais dans tous les cas, le résultat de la requete sera tab[i] ou rien du tout, cette requete ne sert qu'a vérifier que tab[i] est dans la base e données
dounatt
Messages postés45Date d'inscriptionvendredi 13 mars 2009StatutMembreDernière intervention 3 février 2014 8 févr. 2012 à 11:43
Bonjour
1. Avec r31=stm.executeQuery("SELECT objet FROM appels WHERE objet= "+tab[i]);
sachant que objet est VARCHAR et tab[i] est String,
l'erreur est Unknown column 'adh' in 'where clause'
Cette requête marche bien si VARCHAR=integer (... WHERE numero=i)
2. Avec r31=stm.executeQuery("SELECT objet FROM appels WHERE objet like 'tab[i]'");
tab[i] n'est pas considéré comme variable, car la comparaison ne se fait pas
correctement.
J'ai essayé avec votre proposition, ça n'a pas été marché. Je pense que le problème est comment comparer deux chaines de caractères, et comment exprimer une variable.