AzevedoSt27
Messages postés65Date d'inscriptionmercredi 10 novembre 2010StatutMembreDernière intervention27 mai 2012
-
22 mars 2011 à 15:02
cs_jopop
Messages postés1540Date d'inscriptionlundi 26 mai 2003StatutMembreDernière intervention 1 août 2013
-
23 mars 2011 à 10:34
Bonjour,
Mon problème est le suivant, j'arrive a me connecter a ma base de donnée mais arriver a ma boucle while le programme passe par dessus et je ne sais pas pourquoi!?!?
je veux juste récuperer les noms dans ma base de donnée.
cs_jopop
Messages postés1540Date d'inscriptionlundi 26 mai 2003StatutMembreDernière intervention 1 août 201312 23 mars 2011 à 10:14
Un FieldCount à 3 signifie que tu as 3 colonnes, mais pas nécessairement des lignes.
Simplement ta requête ne renvoie aucune ligne, ta table tbl_classes est vide sur la base à laquelle tu te connectes ;)
Lance le shell MySQL sur cette database et teste ta requête, je suis pratiquement sûr de moi.
NB : le lire.Close() c'est pour être propre, mais ça ne corrigera pas ton pb
cs_jopop
Messages postés1540Date d'inscriptionlundi 26 mai 2003StatutMembreDernière intervention 1 août 201312 22 mars 2011 à 15:16
Salut,
as-tu débuggé ton code ? es-tu sûr que ta connexion est bien ouverte ?
es-tu sûr de ta requête ? l'as-tu essayée sur un client MySQL ?
tu ne passes pas du tout dans le while, ou une exception est levée ?
NB : un DataReader se Close() aussi
: dans ton catch() tu devrais peut-être quitter ta fonction
AzevedoSt27
Messages postés65Date d'inscriptionmercredi 10 novembre 2010StatutMembreDernière intervention27 mai 2012 23 mars 2011 à 08:26
Salut Jopop :)
Oui je les fais! Il ce connecte bien a la base de donnée et lance la requette mais arriver a la boucle while il passe directement a la fermeture de la connexion!
cs_jopop
Messages postés1540Date d'inscriptionlundi 26 mai 2003StatutMembreDernière intervention 1 août 201312 23 mars 2011 à 09:41
Re,
J'ai testé ton code (en changeant la cnxString et la requête, et aussi avec un lire.Close() ^^) et tout fonctionne bien. Petit topo :
- si ta cnxString est erronée tu auras une exception,
- si ta requête est fausse tu auras une exception.
La seule manière que ton code "roule" mais squizz le while c'est que ta requête ne renvoie aucune valeur. Mais si tu dis que t'as testé CETTE requête sur CETTE base de données, alors je vois pas.
Vous n’avez pas trouvé la réponse que vous recherchez ?
AzevedoSt27
Messages postés65Date d'inscriptionmercredi 10 novembre 2010StatutMembreDernière intervention27 mai 2012 23 mars 2011 à 09:53
Yep,
Ma connexion est fonctionne car j'ai changer les nom de la bdd en y ajoutant une faute et il passe directement dans le catch! pour la requette elle fonctionne correctement car en mode debug en regardant dans lire fieldCount est a 3! alors je ne comprend vraiment pas pourquoi il ne passe pas dans le while! j'ai ajouter le lire.Close(); mais toujour pas...