Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici

Les objets d'accès aux données DAO et ADO

Introduction

Lorsque l’on souhaite manipuler les données dans une base, qu’il s’agisse d’accéder à la structure des tables, des requêtes ou directement aux enregistrements, l’utilisation d’objet d’accès aux données est très utile. On peut travailler sur des données qui sont locales, mais également sur des données distantes.

Historiquement, deux modèles ont vu le jour, et l’objectif de ce chapitre est de passer en revue ces modèles. Avant la version Access 2000, seul le modèle DAO (Data Access Objects) existait. Avec la version Access 2000 est apparu un second modèle : ADO (ActiveX Data Objects).

Il est fréquemment recommandé d’utiliser le modèle le plus récent ADO, qui présente des avantages par rapport à son prédécesseur : une meilleure prise en charge de Microsoft SQL Server, de meilleures performances en mode client/serveur et un code plus court et plus simple à rédiger.

Pour la création d’une nouvelle application, l’utilisation du modèle DAO reste possible, mais l’on préférera travailler avec le modèle ADO, rendant pérenne l’application.

Enfin, dans le cas d’une reprise d’application existante, il est tout à fait possible de modifier et mettre à jour le code pour le faire évoluer du modèle DAO au modèle ADO, tout comme effectuer de la maintenance uniquement en modèle DAO.

DAO

1. Introduction

DAO (Data Access Objects) est une bibliothèque VBA qui regroupe un ensemble d’objets permettant d’accéder à une base de données. On utilise ces objets pour accéder à la fois aux structures des données (tables, requêtes) mais aussi aux enregistrements. Le modèle prend en charge deux espaces de travail possibles, ou environnements de bases de données :

  • L’espace de travail Microsoft Jet, qui permet d’accéder aux bases de données Access, aux serveurs de bases de données ODBC (Open DataBase Connectivity) et à des bases de données externes comme par exemple Microsoft Excel, Paradox ou dBase, accessibles grâce à un pilote ISAM (Indexed Sequential Access Method).

  • L’espace de travail ODBCDirect, qui permet de travailler en direct avec les serveurs de données ODBC, sans passer par le moteur de base de données Microsoft Office. On recommande cet espace de travail pour exécuter des requêtes, des procédures stockées ou des fonctions spécifiques à ODBC sur un serveur distant type SQL Server.

Pour utiliser la bibliothèque d’objets DAO, la référence Microsoft Office 16.0 Access database engine Object Library doit être cochée. À noter qu’une référence Microsoft DAO 3.6 Object Library dans la liste des références existe, mais si vous tentez de la cocher avec Access 2021, vous obtiendrez un message d’erreur comme suit.

images/0601N.png

2. Modèle des données DAO

Vous trouverez ci-dessous le modèle hiérarchique des objets du modèle DAO :

images/1906RI1.PNG

3. Description des collections DAO

Pour chacun des types d’objet DAO, on peut constater l’existence d’une collection, hormis pour l’objet DbEngine.

Collection

Ensemble des objets...

ADO

1. Introduction

ADO (ActiveX Data Objects) est une bibliothèque VBA qui regroupe un ensemble d’objets permettant d’accéder à une base de données. On utilise ces objets pour accéder aux structures des données (tables, requêtes) mais aussi pour manipuler les enregistrements. Le modèle prend en charge l’environnement de base de données OLE DB. Cette bibliothèque est plus performante que DAO, et permet notamment de réaliser des applications client / serveur mais également des applications web.

Pour utiliser la bibliothèque d’objets ADO, il est nécessaire d’ajouter la référence Microsoft ActiveX Data Objects 6.X Library dans la liste des références. Vous pouvez effectuer cette manipulation en sélectionnant l’onglet Références dans le menu Outils. Si vous ne trouvez pas directement cette référence à cocher dans la liste des références disponibles, vous pouvez cliquer sur le bouton Parcourir et chercher son emplacement. Le fichier msadoXX.dll se trouve généralement dans le dossier suivant : C:\Program Files (x86)\Common Files\System\ado

Le fichier d’aide ADO210.chm, fourni en complément des exemples de cet ouvrage, vous sera utile pour trouver des informations détaillées sur l’utilisation du modèle objet DAO.

2. ADO et OLE DB

La technologie OLE DB permet un accès uniforme aux différentes données stockées dans différentes sources d’informations (base de données relationnelles, messagerie, système de fichiers, etc.).

Ci-dessous se trouve l’architecture technologique mettant en lien ADO et OLE DB.

images/1906RI2.png

3. Modèle de données ADO

Le schéma suivant représente les différentes collections d’objets contenues...