DetailPage-MSS-KB

Base de connaissances

Numéro d'article: 183606 - Dernière mise à jour: jeudi 17 mai 2007 - Version: 4.2

 
Cet article peut contenir des liens vers des informations en langue anglaise (pas encore traduites).

Résumé

Cet article offre des réponses à plusieurs questions fréquemment posées sur la programmation d'ActiveX Data Objects (ADO).

Plus d'informations

Q. Qu'est-ce qu'ActiveX Data Objects ?

R. ActiveX Data Objects (ADO) est un modèle d'objet neutre par rapport au langage qui expose les données générées par un fournisseur OLE DB sous-jacent. Le fournisseur OLE DB le plus couramment utilisé est le fournisseur OLE DB pour pilotes ODBC, qui expose les sources de données ODBC à ADO.

Q. Où peut-on se procurer ActiveX Data Objects ?

R. ADO fait partie des composants MDAC (Microsoft Data Access Components). ADO est disponible à partir de la page de téléchargements gratuits sur le site MSDN à l'adresse suivante (en anglais) :
http://msdn2.microsoft.com/en-us/data/aa937695.aspx (http://msdn2.microsoft.com/en-us/data/aa937695.aspx)
Q. Où se trouve la documentation comprise dans ADO ?

R. La documentation relative à ADO est au format HTML ; elle est comprise dans le Kit de développement logiciel (SDK) MDAC qui peut être téléchargé à partir du site Web mentionné précédemment. Choisissez l'option d'installation autonome Microsoft Data Access Components SDK si vous téléchargez MDAC 2.0 ou la mise à jour Microsoft Data Access Components SDK si vous téléchargez MDAC 2.1.

La documentation relative à la dernière version d'ADO est également disponible en ligne (en anglais) à l'adresse suivante :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmdac/html/datechartoverview.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmdac/html/datechartoverview.asp)
La documentation relative à ADO fait partie de la documentation du Kit de développement logiciel de plate-forme comprise dans MSDN Library. Dans MSDN Library, choisissez Contents (Contenu), puis Platform SDK | Data Access Services | Microsoft Data Access Components (MDAC) SDK | Microsoft ActiveX Data Objects (ADO).

Q. Qu'est-ce que le service RDS (Remote Data Service) pour ADO ?

R. Le service RDS (Remote Data Service) est utilisé pour transporter les jeux d'enregistrements ADO d'un serveur à un ordinateur client. Le jeu d'enregistrements résultant est mis en cache sur l'ordinateur client et déconnecté du serveur. RDS utilise un sous-ensemble du modèle d'objet ADO, le jeu d'enregistrements ADOR.Recordset, pour offrir une méthode à la fois économique en ressources et performante permettant d'assembler les données de jeux d'enregistrements sur un réseau ou un Web.

Q. Quelle est la différence entre les objets ADODB et ADOR ?

R. La Bibliothèque ADODB contient des objets supplémentaires côté serveur (Connection, Command, Error, Parameters etc.). Ces derniers peuvent être utilisés dans des composants côté serveur pour communiquer avec la base de données.

La Bibliothèque ADOR est un client plus "léger" qui permet de manipuler un jeu d'enregistrements existant sur le client. Elle ne comprend pas les commandes Connection, Command, Error, ou Parameters. La fonctionnalité ADOR est distribuée avec les composants clients ADO.

Q. Comment procéder pour commencer à utiliser ADO avec C++ ?

R. La meilleure solution est d'utiliser #import, qui génère des classes très "minces" autour de la bibliothèque de types ADO et vous permet de les manipuler à l'aide d'une syntaxe très proche de la syntaxe Visual Basic pour Applications (VBA). La plupart des exemples ADO sont écrits à l'aide de VBA et #import vous permet de traduire plus facilement que, par exemple, si vous utilisiez COleDispatchDriver de Microsoft Foundation Class (MFC) OLE ou si vous utilisiez directement la programmation COM. Les articles de la Base de connaissances Microsoft répertoriés ci-dessous vous aideront à utiliser ADO avec #import :
220152  (http://support.microsoft.com/kb/220152/ ) Exemple : ADO simple ADOVC1 / application VC++
173645  (http://support.microsoft.com/kb/173645/ ) BOGUE : Violation d'accès dans Msdaer.dll avec exceptions _com_error
173645  (http://support.microsoft.com/kb/173645/ ) FICHIER : Adovcbtd.exe #import à l'aide de UpdateBatch et CancelBatch
184968  (http://support.microsoft.com/kb/184968/ ) Adovcsp.exe démontre l'utilisation de procédures stockées avec ADO
182389  (http://support.microsoft.com/kb/182389/ ) FICHIER : Adovcbm.exe ADO 1.5 avec #import et Getrows/Bookmarks
166112  (http://support.microsoft.com/kb/166112/ ) PRB : Conflit avec EOF lors de l'utilisation de #import avec ADO
169496  (http://support.microsoft.com/kb/169496/ ) INFO : Utilisation de ActiveX Data Objects (ADO) via #import dans VC++
168354  (http://support.microsoft.com/kb/168354/ ) INFO : Erreurs de fournisseurs sous-jacents OLE et OLEDB exposées par ADO
En outre, une recherche indiquant Visual C++ comme produit affiche les articles suivants, qui s'avèreront utiles pour les développeurs ADO :
167802  (http://support.microsoft.com/kb/167802/ ) EXEMPLE : EXCEPTEX intercepte les exceptions MFC et Win32
175784  (http://support.microsoft.com/kb/175784/ ) INFO : Remplacement du mécanisme de génération d'exception de #import
Q. Où puis-je trouver des articles de la Base de connaissances Microsoft spécifiques à ADO ?

R. Connectez-vous à la Base de connaissances Microsoft sur le Web. Pour accéder à la Base de connaissances Microsoft sur le Web, reportez-vous au site Web de Microsoft à l'adresse suivante : Pour plus d'informations sur la façon d'utiliser la Base de connaissances Microsoft, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
129725  (http://support.microsoft.com/kb/129725/ ) Consultation des articles de la Base de connaissances sur le Web
Q. Comment puis-je déterminer les fonctionnalités d'ADO ?

R. Les fonctionnalités d'ADO dépendent du fournisseur de données qu'il utilise. La façon la plus facile et la plus rapide est d'afficher la propriété Supports pour vérifier que la connexion ou le jeu d'enregistrements que vous avez ouvert prend en charge la fonctionnalité dont vous avez besoin. Vous devez également vérifier que CursorType et LockType correspondent bien aux types prévus. Si le fournisseur sous-jacent ne prend pas en charge le curseur demandé, ADO abaisse ces propriétés pour obtenir le curseur qui est le plus proche possible de celui demandé.

Pour une approche plus approfondie, vous pouvez également analyser le fournisseur de données sous-jacent utilisé sous ADO. Le fournisseur le plus couramment utilisé est le fournisseur OLE DB pour pilotes ODBC, qui expose les sources de données ODBC à ADO. Vous pouvez utiliser les collections Propriétés pour les objets Connection, Command, Recordset et Field et comparer les résultats affichés à la spécification OLE DB et au document "OLE DB Leveling" compris dans le OLE DB SDK, qui peut être téléchargé gratuitement (en anglais) à partir de l'adresse suivante :
http://msdn2.microsoft.com/en-gb/library/ms713643.aspx (http://msdn2.microsoft.com/en-gb/library/ms713643.aspx)
Notez que ADO ne définit pas automatiquement chaque valeur pour chaque propriété exposée dans les collections. Pour des raisons de performances, la propriété n'est définie que lorsque l'opération effectuée avec ADO doit réellement utiliser cette propriété exposée par le fournisseur sous-jacent. ADO diffère en cela d'autres modèles d'objets tels que DAO qui initialisent toutes les propriétés, que l'opération effectuée les utilise ou non.

L'utilisation de la propriété Recordset.Supports constitue la manière la plus simple de vérifier que ce que vous attendez est effectivement ce que le fournisseur a exposé pour vous, compte tenu du type de connexion et de jeu d'enregistrements que vous avez ouverts.

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft ActiveX Data Objects 1.0
  • Microsoft ActiveX Data Objects 1.5
  • Microsoft ActiveX Data Objects 2.0
  • Microsoft ActiveX Data Objects 2.1
  • Microsoft ActiveX Data Objects 2.5
  • Microsoft ActiveX Data Objects 2.6
  • Microsoft ActiveX Data Objects 2.7
Mots-clés : 
kbarttypeinf kbdatabase kbfaq kbinfo KB183606
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Article KB retiré.Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.
Partager
Options de support supplémentaire
Forums du support Microsoft Community
Nous contacter directement
Trouver un partenaire Microsoft Certified Partner
Microsoft Store