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 :

ADO et base de données Access


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Concepteur traitement de signal
    Inscrit en
    Août 2004
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Concepteur traitement de signal
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2004
    Messages : 192
    Par défaut ADO et base de données Access
    Bonjour,

    J'aurais voulu savoir si les composants ADO de BB6 ne s'utilisent qu'avec des bases de données Access ? Parce que je n'ai pas access sur mon ordi et ne compte pas l'avoir non plus, mais je voudrais pouvoir déployer mon programme sur n'importe quel ordi sans avoir à utiliser BDE puisqu'il n'est pas installé sur toutes les machines, alors que les outils pour accéder aux bases de données access sont fournis sur windows ....

    Par ailleurs, connaitriez-vous un moyen de créer une base de données Access sans Access ??

    Merchi !

  2. #2
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut androz
    Regarde dans la FAQ il est possible de creer une base de donnees type Access sans Access

  3. #3
    Membre confirmé
    Profil pro
    Concepteur traitement de signal
    Inscrit en
    Août 2004
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Concepteur traitement de signal
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2004
    Messages : 192
    Par défaut
    Salut Blondelle,

    J'avais vu la FAQ oui, mais en fait j'ai pas trop compris l'essentiel, à savoir :

    Pour cela, récupérer la odbccp32.dll (32bits), utiliser un petit IMPLIB pour faire le odbccp32.lib, et lier tout ça au projet:
    Comment on fait "un petit IMPLIB" ?? J'ai commencé à chercher un peu, et j'ai rien trouvé de concluant. Sous Borland, je suis allé dans Project->Import Type Library , mais je n'ai pas trouvé le dll en question. J'ai donc essayé de l'ajouter, mais là j'ai un message d'erreur.... pfff

    J'ai trouvé sous Vista l'administrateur de source de données ODBC, donc j'ai pu localiser le dll en question. Il me reste à trouver le moyen d'en faire un *.lib avec IMPLIB et là... je coince.

  4. #4
    Membre confirmé
    Profil pro
    Concepteur traitement de signal
    Inscrit en
    Août 2004
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Concepteur traitement de signal
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2004
    Messages : 192
    Par défaut
    Ok, comme souvent, je trouve deux minutes après avoir posté....

    suffit d'utiliser une commande en ligne

    IMPLIB c:\librairie.lib c:\windows\system32\odbccp32.dll

    et voilou, seulement, si je fais un bête copier-coller des trois lignes de code de la FAQ, j'ai un message d'erreur comme quoi il connait pas la fonction SQLConfigDataSource. On dirait que le link vers la librairie s'est pas faite ou bien j'ai oublié quelque chose ?? En plus, ce qui me confirme que y'a un autre souci, c'est que je viens de me rendre compte que la librairie existait déjà dans mon répertoire de librairies Borland ! donc pas besoin de la refaire avec IMPLIB....

  5. #5
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Je ne comprend pas ton probleme, voici le code de la FAQ pour creer une base type Access
    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
     
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
        // ne pas oublier d'inclure #include <comobj.hpp>
        Variant vADO;
        AnsiString Filename = "C:\\Documents and Settings\\blondelle\\Mes documents\\maBdd2.mdb";
        AnsiString provider = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Filename+";";
        if (FileExists(Filename.c_str()))
    {
    MessageBox(Handle,"Ce fichier existe déja!" ,"ATTENTION",MB_OK|MB_ICONWARNING ) ;
    vADO = Unassigned;
    return;
    }
        vADO = Variant::CreateObject("ADOX.Catalog");
        vADO.OleFunction("create", provider.c_str());
        // on termine
        vADO = Unassigned;
    }

  6. #6
    Membre confirmé
    Profil pro
    Concepteur traitement de signal
    Inscrit en
    Août 2004
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Concepteur traitement de signal
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2004
    Messages : 192
    Par défaut
    Mon problème, c'est que je n'utilisais pas la bone FAQ

    Par contre, j'ai quand même un souci, je récupère une exception à l'appel de la OleFunction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vADO.OleFunction("create", provider.c_str());
    avec comme seul message : "Une exception s'est produite". La belle affaire. De plus, je ne suis pas sur de comprendre ce que sont les Variant... me reste du boulot on dirait bien

Discussions similaires

  1. Réponses: 0
    Dernier message: 28/08/2012, 17h41
  2. Edition d'une base de données access en utilisant ado.net
    Par sidisadmir dans le forum ADO.NET
    Réponses: 2
    Dernier message: 10/02/2011, 12h56
  3. Réponses: 15
    Dernier message: 25/10/2004, 11h50
  4. [Déploiement]Base de donnée Access
    Par Giovanny Temgoua dans le forum Bases de données
    Réponses: 9
    Dernier message: 09/08/2004, 20h48
  5. associer une base de données(access) a un dbgrid
    Par ange1708 dans le forum MFC
    Réponses: 3
    Dernier message: 11/06/2002, 12h18

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