Partage
  • Partager sur Facebook
  • Partager sur Twitter

[VB6] Récupération de données MySQL...

...et utilisation!

    1 avril 2006 à 21:39:43

    Salut tout le monde!

    Voilà mon problème: je crée un petit jeu en ligne en VisualBasic. Pour cela, j'ai deux applications: le serveur et le client.
    Le serveur accède directement à une base de données MySQL où sont enregistrées des données.
    Le client doit passer par l'application serveur pour récupérer les données.

    Voilà comment ca se déroule:
    1) Le client envoi une requete au serveur
    2) Le serveur transforme cette requete en requete SQL
    3) Le serveur execute cette requete et obtient une réponse
    4) Le serveur renvoi toute la réponse SQL au client
    5) Le client recoit le tout et classe tout bien comme il faut dans un FlexGrid
    6) Le client se sert des données

    Mais il s'écoule un lap de temps trop long entre 1) et 5). Voilà en gros comment c'est codé (chez le client):

    ' 1. Envoi de la requete SQL
    ' 2. Classement dans le FlexGrid ici
    ' 3. Je me sers des données classées dans le Flexgrid


    Vu le temps qu'il s'écoule, ben au moment ou je cherche à me servir des données classées dans le flexgrid, elles n'y sont pas encore! Comment faire pour attendre que les données arrivent dans le flexgrid pour procéder au 3. ?
    J'ai essayé une boucle while, un If avec un retour étiquette,... La boucle fait planter VisualBasic et rend carrément inutilisable le PC, et la condition If ne se vérifie jamais!

    De là, je me pose la question suivante:
    Comment faire pour que mon application attendre que l'étape "1. (envoi de la requete SQL)" soit terminée avant de continuer? Enfait, l'envoi de la requete se fait sous forme de fonction:
    MySQL_Query("Requete SQL")

    Il me semble qu'en VB, il y a moyen d'attendre la fin de la fonction avant de procéder à la suite... Mais je n'en suis pas sur et je ne sais pas comment faire! Pouvez-vous m'aider? Je suis désespéré!


    Merci d'avance!
    ++

    PS: Je suis sous VB6.
    • Partager sur Facebook
    • Partager sur Twitter
      6 avril 2006 à 19:48:35

      au niveau des boucles tu peux pas essayer un
      Do... Loop Until [répéter jusqu'à ce que ma variable qui doit contenir les données ne soit pas vide)... ?

      Si effectivement ça fait tourner trop vite et ça plante alors.... Timer !!!
      Tu lances un timer avant et tu vérifies l'état de ta varaible genre toutes les 0.5 secondes et dès que ça y est tu met la suite du code :p
      • Partager sur Facebook
      • Partager sur Twitter
        6 avril 2006 à 21:54:16

        Ouais le Do Loop faisait planter VB...et a déjà fait planter le PC entier carrément :\

        Je voulais pas passer par un timer. J'aime pas les timers pour ce genre d'utilisations je trouve que ca fait trop bourin. Mais visiblement pas le choix!

        Merci de ton aide en tout cas. :)
        • Partager sur Facebook
        • Partager sur Twitter
          6 avril 2006 à 21:57:34

          hihi bah en fait il y a peut être une fonction mais je suis pas très callé en intéraction MySQL :S
          Sinon les timers c'est très bien sauf si tu veux vraiment une appli otpimisée 100% ou si elel est commerciale ^^
          enfin bon is t pas très très exigeant un timer suffit. tu le désactives dès que ta variable est remplie il aura fonctionné quelques secondes c'et pas la mort :p
          • Partager sur Facebook
          • Partager sur Twitter

          [VB6] Récupération de données MySQL...

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown