Comprendre les Recordset ADO

GENERALITES
Définition
Consommateur & fournisseur de données
Fournisseur & composant de service
Jeu d’enregistrement (Recordset)
LES CURSEURS
Positionnement (CursorLocation)
Curseur côté serveur (adUseServer)
Curseur côté client (adUseClien t)
Fonctionnalités (bibliothèque de curseur)
Verrouillage (LockType)
Type de curseur (CursorType)
Héritage
Discussion autour des curseurs
Méta-données
Données (Fields)
LES INFORMATIONS DE SCHEMA
Taille du cache
Marshaling
Mécanismes de base
Modification d’un Recordset client
FireHose, un curseur particulier
Conseils pour choisir son curseur
Synchrone Vs Asynchrone
Opération globale (par lot)
Les transactions
Les procédures stockées
Gérée par le code
Le piège « l’exemple Jet »
Recordset Vs SQL
Optimisation du code
L’optimisation dans l’accès aux données
Optimisation dans l’utilisation d’ADO
L’OBJET RECORDSET
Propriétés
AbsolutePosition
Bookmark
CacheSize
EditMode
Filter
Index
MarshalOptions
MaxRecords
RecordCount
Sort
Source
State
Status
Propriétés dynamiques
IrowsetIdentity
Optimize
Resync Command
Unique Table, Unique Catalog & UniqueSchema
Update Criteria
Update Resync
Collection Fields
Méthodes
AddNew
CancelBatch
CancelUpdate
Clone
Delete
Find
GetRows
GetString
MoveFirst, MoveLast, MoveNext, MovePrevious
Open
Requery
Resync
Save
Seek
Supports
Update
UpdateBatch
Evènements
AdStatusEnum
EndOfRecordset
FetchProgress & FetchComplete
WillChangeField & FieldChangeComplete
WillChangeRecord & RecordChangeComplete
WillChangeRecordset & RecordsetChangeComplete
WillMove & MoveComplete
RAPPELS ADO
L’objet Connection
La propriété CursorLocation
La propriété IsolationLevel
La propriété Mode
Collection Errors
Evènements de connexion
L’objet Command
Généralités
Propriétés
Méthodes
Collection Parameters
Objet Parameter
Exemple
EXEMPLE D’UTILISATION
Ouvrir un recordset
Nombre d’enregistrement, position et signet
Comparaison SQL Vs Recordset
Les recherches
Recherche avec Seek
Recherche avec Find
Récupérer une clé auto-incrémentée
Contrôles Visual Basic
Le contrôle ADO (ADODC)
Le contrôle DataGrid
Programmation évènementielle
Connection et command asynchrone
Extractions bloquantes & non bloquantes
Suivre l’extraction
Gestion des modifications
Recordset persistant
Synchronisation
Traitement par lot
MISE EN FORME DES DONNEES
Recordset hiérarchique
Agrégat
VERS ADO.NET
DataSet
DataReader
DataAdapter
Construire sa logique d’action
Utiliser le CommandBuilder
CONCLUSION

Introduction

Dans cet article nous allons étudier spécifiquement l’objet Recordset ADO. Cette étude va pourtant nous entraîner à travers une grande partie du modèle objet ADO. En parcourant les forums Access et Visual basic de « developpez.com », je me suis rendu compte que si cet objet est beaucoup utilisé, il l’est souvent assez mal ce qui engendre un grand nombre de dysfonctionnements.
Ceci est d’ailleurs compréhensible puisque cet objet demande une connaissance correcte des mécanismes mis en jeux par les SGBD et les fournisseurs, ainsi que quelques astuces de programmation. En effet, ADO dans sa vision « universelle » d’accès aux données offre de nombreuses techniques

Préambule

Le développement d’une application est souvent une suite de compromis entre performance,convivialité, ergonomie, etc.…
Par contre, lorsque l’on construit une application utilisant un SGBD, celle-ci ne doit jamaismettre en péril l’intégrité des données. Vous devez construire votre application en respectant cette règle. La moindre prise de risques concernant une éventuelle perte d’intégrité est à bannir.
Vous trouverez sûrement dans la suite de cet article que les jeux d’enregistrements (recordset) peuvent manquer de fonctionnalités, mais très souvent le fournisseur de données anticipe sur la règle énoncée précédemment en vous interdisant les opérations « à risques ».

Généralités

Définition
ADO (ActiveX Data Object) est un modèle d’objets définissant une interface de programmation pour OLE DB.
OLE DB est la norme MicrosoftÒpour l’accès universel aux données. Elle suit le modèle COM (Component Object Model) et englobe la technologie ODBC (Open DataBase Connectivity) c onçue pour l’accès aux bases de données relationnelles. OLE DB permet un accès à tout type de source de données (même non relationnelles). OLE DB se compose globalement de fournisseurs de données et de composants de service.

Consommateur & fournisseur de données
Dans la programmation standard des bases de données en Visual Basic, il y a toujours une source de données (dans le cas de cet article, une base Access exemple : biblio.mdb).Pour utiliser cette source de données, il faut utiliser un programme qui sait manipuler ces données, on l’appelle le fournisseur (dans certains cas serveur). Un fournisseur qui expose une interface OLE DB est appelé Fournisseur OLE DB.
Dans le cas qui nous intéresse, votre code, qui demande des données est le consommateur (ou client).

Fournisseur & composant de service
Un fournisseur de service permet d’ajouter des fonctionnalités au fournisseur de données. Il y en a plusieurs dans ADO tel que « Microsoft Data Shaping Service » qui permet la construction de recordset hiérarchique ou « Microsoft OLE DB Persistence Provider » qui permet de stocker les recordsets sous forme de fichiers. L’appel de ces fournisseurs n’est pas toujours explicite (cf. Recordset persistant) Un composant de service n’a pas d’existence propre.
Jeu d’enregistrement (Recordset)
Lorsque le fournisseur extrait des données de la source (requête SELECT), il s’a git de données brutes (sans information annexe) n’ayant pas un ordre particulier. Celles-ci ne sont pas très fonctionnelles, et il faut d’autres informations pour pouvoir agir sur la source de données. En fait, un recordset est un objet contenant des donné es de la base agencées de façon lisible, et des méta -données. Ces méta-données regroupent les informations connexes des données telle que le nom d’un champ ou son type et des informations sur la base telle que le nom du schéma.

….

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Comprendre les Recordset ADO (438 KO) (Cours PDF)
Utiliser l'objet recordset ADO

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *