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

C++Builder Discussion :

c ++ Builder et MySQL


Sujet :

C++Builder

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 3
    Points : 3
    Points
    3
    Par défaut c ++ Builder et MySQL
    salut
    Et il possible de faire des accées avec le c++ builder sur une basse de données crée sous MySQL
    si oui comment ?

    thx

  2. #2
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    Essai avec les composants suivants :

    SQLConnection // permet de se connecter à une base de donnée

    ensuite tu peux utiliser le composant:
    SQLDataSet // permet de traiter tes requétes..

    exemple

    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
     
    // on se connecte a la bd
    SQLConnection1->Connected = true;
     
    // on execute notre requete
    SQLDataSet1->CommandText = "select * from table ...";
     
    // on regarde cmbien on a de record
    int nb = SQLDataSet1->RecordCount;
     
    // activation du curseurSQLDataSet1->Open();
     
    // on se place sur le premier
    SQLDataSet1->First();
     
    // boucle sur les enregistrements
    while(........)
    {
                    String taVariable = SQLDataSet1->FieldValues["tonChamp"];
    }
     
    // on ferme le curseur
    SQLDataSet1->Close();

    J'en profite pour demander comment faire pour modifier les parametres de connexion à la base de donnée.

    Car avec le code si dessus, je part du principe que les paramétres sont assigné lors de la création du composant, mais j'aimerais pouvoir les modifiers via le code selon un fichier....

    Je sais que ca tourne autour du "params" mais j'ai pas reussi...

    Un petit exemple m'aiderais bien.
    Merci

  3. #3
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Suffit de demander ;-)

    Tu devrais trouver ce qu'il te faut ici :
    http://ricky81.developpez.com/tutoriel/bcb/bde/

    Cordialement

    Eric

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    Aprés avoir lu, et recherche dans le forum, voila ce que j'ai testé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
            SQLConnection1->Params->Clear();
            SQLConnection1->Params->Values['BlobSize'] = '-1';
            SQLConnection1->Params->Values['Database'] = dbName;
            SQLConnection1->Params->Values['HostName'] = dbServeur;
            SQLConnection1->Params->Values['User_Name='] = dbUser;
            SQLConnection1->Params->Values['Password='] = '';
    Pas de chance, ca ne marche pas.... "Constante caractére trop longue ou vide" sur la premiére ligne, ou la deuxieme si je met en commentaire la premiere..

    Il me semblait que j'aller toucher au but....

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Bonjour,

    ca ne serait pas mieux comme ceci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
            SQLConnection1->Params->Clear();
            SQLConnection1->Params->Values["BlobSize"] = "-1";
            SQLConnection1->Params->Values["Database"] = dbName;
            SQLConnection1->Params->Values["HostName"] = dbServeur;
            SQLConnection1->Params->Values["User_Name="] = dbUser;
            SQLConnection1->Params->Values["Password="] = "";
    Cordialement

    Eric

  6. #6
    Candidat au Club
    Inscrit en
    Novembre 2002
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Personellement j'ai fait autrement...

    Connection à une base de donnée mysql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    MYSQL *mySQL;
    mySQL = mysql_init(NULL);
    MYSQL_ROW myROW;
    MYSQL_RES *myRES;
     
    if (!mysql_real_connect(mySQL, "serveur", "root", "password", "BaseDeDonnee", 0, NULL, 0))
            {
            //Connection MySQL échouée
            }
    else
            {
            //Connection MySQL réussie
            }
    Ceci est à intégrer à chaque requête...

    Ensuite, avoir par exemple toute une liste de réponses :
    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
    if (!mysql_query(mySQL, "select noms from tableau"))
            {
            myRES = mysql_store_result(mySQL);
            if (myRES)
                    {
                    for (unsigned int i = 0; i < myRES->row_count; i++)
                            {
                            myROW = mysql_fetch_row(myRES);
                            for (unsigned int j = 0; j < mysql_num_fields(myRES); j++)
                                    {
                                    aStr = myROW[j];
                                    ComboBox1->Items->Add(aStr);
                                    }
                            }
                            mysql_free_result(myRES);
                    }
            }
    Et ne pas oublier à la fin de chaque requête le fameux :
    Voila... A part ca... bah... aStr est en fait la réponse de la demande SQL, et pour savoir comment marchent les questions en mySQL, suffit d'aller sur le bon forum :-p mais voici quelques exemples :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "select truc from tableau where pseudo ='"+ComboBox1->Text+"'";
    Ceci permet de choisir les réponses dans la colonne "truc" dont le pseudo correspond à ce qui est écrit dans un combobox :-p C'est du code tout pret qui permet de mieux comprendre je penses...

    Ensuite, pour raffraichir un peu le tableau et non pas seulement y lire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "update comptes set pass='"+Edit2->Text+"',nom='"+Edit3->Text+"' where pseudo ='"+Edit1->Text+"'";
    et pour insérer une nouvelle ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "insert into comptes (pseudo,pass,nom) values ('"+Edit1->Text+"','"+Edit2->Text+"','"+Edit3->Text+"')";

  7. #7
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Bonjour,

    pourquoi ne pas citer directement la ressource : http://lfe.developpez.com/BCBmySQL/

    Cordialement

    Eric

  8. #8
    Candidat au Club
    Inscrit en
    Novembre 2002
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Parce que j'avais oublier d'ou ca me venait ^_^ J'ai une mémoire de poisson rouge, et puis de toute façon 95% de mes connaissances me viennent du site et du forum de developpez.com :-)

    Sinon, si je m'en était souvenu je l'aurais citer... Enfin... D'ailleurs notre posteur principal pourrait nous dire quelle réponse a t'il préféré?

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci à tous pour c précieux conseil

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. C++ Builder et MySQL
    Par guiga dans le forum C++Builder
    Réponses: 2
    Dernier message: 18/03/2007, 01h25
  2. C++Builder et MySQL
    Par saidus dans le forum C++Builder
    Réponses: 6
    Dernier message: 29/10/2005, 15h08
  3. [C++BUILDER ET MYSQL]
    Par saidus dans le forum C++Builder
    Réponses: 2
    Dernier message: 26/09/2005, 08h48
  4. Probleme C++Builder et Mysql
    Par noname dans le forum C++Builder
    Réponses: 3
    Dernier message: 20/06/2002, 13h40

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