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

Bases de données Delphi Discussion :

[Débutant BDD] ADO ou ODBC?


Sujet :

Bases de données Delphi

  1. #1
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut [Débutant BDD] ADO ou ODBC?
    Salut à tous
    Voila, je voudrais faire évoluer mon programme de gestion de BDD qui commence à donner de sérieux signes de faiblesse. Il ne fait que consulter et rechercher les données d'une base Access et les mettre en forme. Bref rien que du très classique. J'utilise pour cela, les composants KaDAO mais je trouve que ça fait un peu usine à gaz. Je voudrais utiliser des composants VCL qui me semblent plus M$ Friendly
    Sur la FAQ, j'ai trouvé ceci:
    http://delphi.developpez.com/faq/?page=access
    (Car figurez-vous qu'il y a une FAQ )

    Très bien mais une question se pose à moi, novice que je suis en la matière: Quelle est la différence entre ADO et ODBC?
    Et surtout lequel devrais-je choisir?

    Sachant que le poste sur lequel mon programme tournera aura déjà Access installé (97 ou 2000), que le fichier mdb est au format 97, et que, à part copier l'exécutable sur le poste, je ne veux rien avoir à faire d'autre...
    Donc si une âme charitable pouvait m'expliquer quels sont les avantages/inconvénients de chaque méthode, je suis tout ouïe
    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut,

    L'ODBC permet d'interfacer de façon standard une application à n'importe quel serveur de bases de données, pour peu que celui-ci possède un driver ODBC (en fait la quasi totalité des SGDB).

    Tu peux donc te connecter à une base Access en utilisant le BDE + ODBC.
    Mais dans la mesure où la VCL possède les composants ADO qui te permettent d'accèder directement à la base Access, là tu gagnes une couche.

    Donc, pour moi, va pour l'ADO.

    Maintenant pour te donner plus de détails sur les différences de ces 2 méthodes de connexion... J'irais peut-être voir sur le forum Bases de Données|Général SGBD, ils seront peut-être plus à même à répondre.

    @+ Claudius.

  3. #3
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    ADO Gère lui aussi l'ODBC mais en fait cela ferait rajouter une couche supplèmentaire non nécessaire à ton programme.
    De plus avec ADO tu n'es pas limité pour l'accès aux bases de données et c'est extrement facile à configurer et la chose la plus importante :
    ADO ne nécessite pas d'installation supplèmentaire de composants sur les PC actuels (Le jet engine et les MDAC doivent juste être à jour sur le PC).

  4. #4
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Je vous remercie de vos avis
    Je vois que ADO arrive devant... Et c'est vrai qu'il est plus facile à mettre en place que ODBC (j'ai encore quelques problèmes à résoudre avec ODBC alors qu'avec ADO, tout s'est fait simplement )
    Merci à vous deux
    Je laisse le post ouvert au cas où quelqu'un aurait un avis à donner

  5. #5
    Membre expérimenté
    Avatar de Frank
    Homme Profil pro
    Chef de projet Informatique
    Inscrit en
    Avril 2002
    Messages
    1 095
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chef de projet Informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 095
    Points : 1 392
    Points
    1 392
    Par défaut
    Humm, sans vouloir dire de bétise, cher ami corse, (même si je sens que ma réponse va aller directement dans la taverne ..) quand est ce qu'ado a t'il été implémentée dans Access ?
    N'est ce pas avec Access 2000 ?

  6. #6
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Ado fonctionne avec ACCESS 97 si c'est la future question que tu risques lui poser
    Ado n'est pas un moteur spécifique a ACCESS, mais un middleware du même type qu'ODBC (c'est pour cette raison que l'on trouve parfois des drivers ado pour différent moteur de base de données).

  7. #7
    Membre expérimenté
    Avatar de Frank
    Homme Profil pro
    Chef de projet Informatique
    Inscrit en
    Avril 2002
    Messages
    1 095
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chef de projet Informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 095
    Points : 1 392
    Points
    1 392
    Par défaut
    Citation Envoyé par Malatar
    Ado fonctionne avec ACCESS 97 si c'est la future question que tu risques lui poser
    Ado n'est pas un moteur spécifique a ACCESS, mais un middleware du même type qu'ODBC (c'est pour cette raison que l'on trouve parfois des drivers ado pour différent moteur de base de données).
    Et pan !

    Direct dans la taverne...

    Merci, Malatar...

  8. #8
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Merci pour cette admirable et fracassante intervention cher confrère
    Et merci Malatar d'avoir rétabli la vérité

    Après renseignements, il semble donc qu'ADO soit plus facile à utiliser que ODBC. Ce qui renforce donc les 2 avis que vous m'avez donné
    Maintenant ces 2 méthodes se valent-elles au niveau des performances? Car même si la base de données que j'utilise n'est pas vraiment grosse, je voudrais optimiser ce programme...
    Autre question: sur chaque poste qui utilisera ce programme, Access (97 ou [exclusif ] 2000) est installé. Ai-je la possibilité de choisir ADO ou ODBC ou dois-je obligatoirement utiliser ADO?

  9. #9
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    ADO te permet de faire soit une connexion en natif à ACCESS ou par ODBC (voir la petite QR que j'ai mise qui t'aidera fortement pour la configuration ^^)

    ACCESS en natif, il faut le fournisseur : Jet 4.0 ole db providers
    ACCESS en ODBC, il faut le fournisseur : Ole db provider for ODBC Drivers.

    Point de vue performance, le natif est toujours mieux que l'ODBC surtout ADO qui est "spécifique" pour ACCESS.

  10. #10
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Salut
    Citation Envoyé par Malatar
    voir la petite QR que j'ai mise qui t'aidera fortement pour la configuration ^^
    Je vais de ce pas y jeter un coup d'oeil

    Citation Envoyé par Malatar
    Point de vue performance, le natif est toujours mieux que l'ODBC surtout ADO qui est "spécifique" pour ACCESS.
    Cette réponse me suffit.
    Merci beaucoup Malatar

  11. #11
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Pour déployer l'appli Access 97 sur des machines sur lesquelles Acces97 n'est pas installé, il faut effectivement le moteur Jet 4.0 ole db providers.

    L'installation est simple : il suffit d'éxécuter DAO35.EXE (moins de 1Mo).
    Récement, j'ai cherché sans succés ce fichier sur le site Microsoft et je l'ai finalement trouvé sur de nombreux autres sites.

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

Discussions similaires

  1. [AC-2010] copyfromrecordset ADO connexion ODBC échec
    Par debdev dans le forum VBA Access
    Réponses: 8
    Dernier message: 07/04/2014, 12h03
  2. Débutant- BdD sur pda et Windev
    Par Basicnav dans le forum Windev Mobile
    Réponses: 2
    Dernier message: 12/01/2010, 11h21
  3. [WinDev] Connexion à une BDD Oracle via ODBC
    Par Morgoth777 dans le forum WinDev
    Réponses: 2
    Dernier message: 01/12/2006, 14h34
  4. structure de ma BDD (ADO)
    Par Emcy dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 07/12/2005, 11h55
  5. [Débutant] Chemin du fichier ODBC
    Par il_a_ri dans le forum Bases de données
    Réponses: 3
    Dernier message: 01/12/2005, 16h56

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