Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1238 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [Résolu] MySQL et condition sur le résultat retourné par une requête

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu] MySQL et condition sur le résultat retourné par une requête

n°1715364
shivaia
Posté le 09-04-2008 à 23:50:05  profilanswer
 

Bonjour,
J'ai un petit soucis avec la fonction ci-sessous :

Code :
  1. int verrifStatusPere(int ID_Job)
  2. {
  3.     MYSQL *conn = db_connect();
  4.     MYSQL_RES *result = NULL;
  5.     MYSQL_ROW row = NULL;
  6.     sprintf(query, "SELECT jp.Status FROM JobPlanif AS jp LEFT JOIN JobDep AS jd ON jd.ID_Dep = jp.ID_Job WHERE ID_Dep = %s", ID_Job);
  7.     char query[255];
  8.     mysql_query(conn, query);
  9.     result = mysql_use_result(conn);
  10.    
  11.     while (row = mysql_fetch_row(result)) {
  12.         if (row[0] != "COMPL" ) {
  13.             logMessage(ID_Job, "Job en cours" );
  14.         } else {
  15.             logMessage(ID_Job, "Job termine" );
  16.         }
  17.     }
  18.    
  19.     mysql_free_result(result);
  20.     mysql_close(conn);
  21.     return 0;
  22. }


La connexion est OK
La requete retourne bien la valeur COMPL pour l'ID_Job donné en paramètre
logMessage ne fait qu'envoyer dans une table MySQL le message donné en second paramètre
et c'est là le problème, ça me retourne toujours "Job en cours" alors que ça devrait
être "Job fini". Quand j'affiche le contenu de row[0] j'ai bien COMPL
Me suis planté quelque part, mais ou ?
(Je me suis mis au C depuis quelques jours, alors si vous voyez de grosses erreurs, toutes critiques sera la bienvenue )
 
Merci
Stéphane


Message édité par shivaia le 11-04-2008 à 23:27:25
mood
Publicité
Posté le 09-04-2008 à 23:50:05  profilanswer
 

n°1715446
kao98
...
Posté le 10-04-2008 à 10:36:34  profilanswer
 

C'est normal. Il faudrait sortir ton "job terminé" du while si je comprends ce que tu veux faire.


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°1716040
shivaia
Posté le 11-04-2008 à 08:51:38  profilanswer
 

Je ne pense pas car il est possible d'avoir plusieurs lignes de résultats à ma requête SQL, donc si au premier tour du while row[0] = COMPL j'arrête la boucle de suite (d'aileurs j'ai oublié le exit...) sinon ça continue.
Mais que veux tu dire par "sortir ton "job terminé" du while" ? Mettre tout le bloc if/else hors de la boucle ?
Là je cherche à faire le test sur chaque lignes retournées par la requête.

n°1716565
shivaia
Posté le 11-04-2008 à 23:26:20  profilanswer
 

Bon, c'est OK, je viens d'avoir la réponse sur un autre forum, il faut simplement utiliser la fonction strcmp()


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [Résolu] MySQL et condition sur le résultat retourné par une requête

 

Sujets relatifs
[VB] [EXCEL] Copier cellules -> RESOLU[PHP][résolu] Include et global -- comportement étrange --
[MySQL] Mysql ne démarre pas[Résolu][Struts] itération pour créer des liens + identifiants
PB de lien avec le resultat sur base[Résolu][VBA] Ouvrir un fichier dans le même processus
DB2: Comment extraire les résultats d'une requéte?Problème template template [RESOLU]
[résolu] signe opératoire contenu dans une variable ? 
Plus de sujets relatifs à : [Résolu] MySQL et condition sur le résultat retourné par une requête


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR