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 :

Base de donnée avec C++ builder


Sujet :

C++Builder

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut Base de donnée avec C++ builder
    Salut,

    Je voulais me lancer dans ce tutorial (http://lberne.developpez.com/bcb/paradox/) pour manipuler une base de données avec C++ Builder mais je bloque dès la première ligne ahah!
    "
    On choisit le menu "Fichier->Nouveau->Table...". On doit avoir l'écran suivant :"


    et encore moins le format Paradox 7 dont on me parle...
    Quelqu'un sait d'ou ça peut venir? je suis sous C++builder 6. Si vous avez d'autres liens/conseils, je suis preneur.
    Merci encore à vous,
    A.

  2. #2
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut
    As-tu le BDE d'installé?

    Je ne vois pas ou tu bloque, tout est dans le tutoriel:
    Pour cela nous utiliserons l'utilitaire fourni par Borland, appelé "Module Base de données" (pour ceux qui ont une version anglaise : Database Desktop).

    On choisit le menu "Fichier->Nouveau->Table...". On doit avoir l'écran suivant :
    Si jamais tu n'arrive pas à ouvrir le module base de donnée: soit directement depuis le menu Démarrer, soit via C++ Builder en faisant
    Outils -> Module base de donnée
    Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    Merci, ça marche... par contre
    une question peut être un peu bête pour toi mais quelle est la différence entre ce tutorial : http://lfe.developpez.com/BCBmySQL/#L2

    et celui ci ( que j'avais mentionné plus haut), il vaut mieux faire lequel?

    http://lberne.developpez.com/bcb/paradox/

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Points : 713
    Points
    713
    Par défaut
    Tu connais firefox ou thunderbird ?
    Ils utilisent sqlite , des bases de données

    Lis ce tuto
    http://www.developpez.net/forums/d52...et-cppbuilder/

    Pas besoin d une usine à gaz si c est un petit programme

    Je te conseillerai aussi l extension sqlite manager pour firefox , que du bonheur pour gerer ces bases de données


    Pour ta question :
    Le 1er lien utilise l api sql , pas de composant , un peu complexe à ecrire mais plus rapide à l execution et c est parfait lorsque tu as pigé le truc

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    Ok, bon je vais regarder tout ça et je reviens vers vous si j'ai un problème
    thanks

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    Premier problème: quand je dl le fichier .zip du tutoriel j'ai cette erreur :
    [Lieur Erreur fatale] Fatal: Unable to open file 'BCBDXLIB.BPI'

    que dois-je faire?
    Merci

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    j'ai télécharger le Borland Database Engine ici :http://www.mes-logiciels.com/logiciel-1260.html

    Je l'ai installé mais ça n'a pas résolu le problème.

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Points : 713
    Points
    713
    Par défaut
    Salut

    Ouvres ton carnet.bpr avec notepad

    et remplaces

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        <PACKAGES value="rtl.bpi vcl.bpi vclx.bpi bcbsmp.bpi qrpt.bpi dbrtl.bpi vcldb.bpi 
          bdertl.bpi ibsmp.bpi vcldbx.bpi teeui.bpi teedb.bpi tee.bpi teeqr.bpi 
          ibxpress.bpi bcbie.bpi vclie.bpi inetdb.bpi inet.bpi nmfast.bpi dclocx.bpi 
          bcb2kaxserver.bpi BCBDXLib.bpi Twain.bpi dxForumLibCB5.bpi OuestIsolLib.bpi"/>
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
          <PACKAGES value="rtl.bpi vcl.bpi vclx.bpi bcbsmp.bpi qrpt.bpi dbrtl.bpi vcldb.bpi 
          bdertl.bpi ibsmp.bpi vcldbx.bpi teeui.bpi teedb.bpi tee.bpi teeqr.bpi 
          ibxpress.bpi bcbie.bpi vclie.bpi inetdb.bpi inet.bpi nmfast.bpi dclocx.bpi 
          bcb2kaxserver.bpi"/>
    J ai juste enlevé les bpi non trouvés qui n etaient également pas dispensables

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    rah ça marche, merci. J'ai cherché partout sur le web sans trouver.
    Tu peux expliquer brièvement pourquoi il fallait changer cette ligne ?


    EDIT: ok pour l'explication

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    Bon, globalement j'ai pas de problème avec le code: simplement la fonction filtreNom, je comprends pas trop à quoi elle sert, qu'est ce qu'il y a à filtrer ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    void __fastcall TMain::FiltreNomChange(TObject *Sender)
    {
       // Procédure qui filtre la base des clients
       String Filtre = "Nom = '" + FiltreNom->Text + "*' ";   // Constrcuction du Filtre avec le texte saisi dans la zone TEdit
       if (FiltreNom->Text.IsEmpty()) // Test si il n'y a rien dans le filtre
        {
          Table->Filtered=false; // Arrête le filtrage de la table
          return; // quitte la methode
        }
       Table->Filter = Filtre; // Mise en place du filtre
       Table->Filtered = true;   // Activation du filtre
     
    }
    j'ai controlé l'aide de c++ builder sur certaines propriétés de table, j'ai trouvé :

    Propriété "Filter" Dérivées de TBDEDataSet : Spécifie le texte du filtre en cours sur un ensemble de données.
    &

    Propriété "Filtered" Dérivées de TBDEDataSet : indique si le filtrage est actif sur un ensemble de données.
    Mais ça m'a pas trop inspiré...

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Points : 713
    Points
    713
    Par défaut
    Je pense juste que çà remplace une clause where dans la requête

    Sauf qu ici le résultat de la requête etant stocké , pourquoi en refaire une ?

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    J'ai refait une autre base de donnée avec Paradox en mettant comme composants un DBGrid, une Table et un Datesource.

    Tout marche bien, j'entends par là, quand je veux insérer quelque chose il le met dans le DBGRID correctement et quand je vais voir dans OUTILS/MODULE BASE DE DONNEE et que j'ouvre ma base de donnée qui s'appelle NouveauTest.db, je vois bien la nouvelle entrée d'insérer.

    Seulement, quand je quitte tout, que je réouvre le projet et que je le compile, il ne m'a pas gardé en mémoire l'entrée que j'avais mise....

    J'ai ce code en fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Form1->Table1->Append();
    Form1->Table1->Edit();
    Form1->Table1->FieldByName("Client")->Value=Edit1->Text;
    Form1->Table1->Post();
    Je pensais avoir tout mis pour qu'il se souvienne de ma donnée et qu'il la remette dans le DBGrid lors du relancement mais non...
    ça vient peut être d'un truc dans l'inspecteur d'objet non coché?
    Quelqu'un a une idée?

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Points : 108
    Points
    108
    Par défaut
    C'est bon j'ai trouvé...

Discussions similaires

  1. Réponses: 19
    Dernier message: 27/10/2011, 14h01
  2. [Débutant] Module base de données avec C++ Builder
    Par haras sar dans le forum C++Builder
    Réponses: 1
    Dernier message: 01/07/2010, 16h20
  3. Réponses: 0
    Dernier message: 16/06/2010, 15h46
  4. Base de données avec C++ Builder
    Par Fabien50 dans le forum C++Builder
    Réponses: 6
    Dernier message: 18/05/2009, 13h32
  5. Choix base de donnée avec C++Builder 6 ?
    Par o_live dans le forum Décisions SGBD
    Réponses: 6
    Dernier message: 30/01/2009, 07h03

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