Fournisseurs et consommateurs OLE DB
L'architecture OLE DB utilise le modèle du consommateur et du fournisseur. Un consommateur formule des demandes de données. Le fournisseur répond à ces demandes en donnant une forme tabulaire aux données avant de les retourner au consommateur. Tout appel pouvant émaner du consommateur doit être implémenté dans le fournisseur.
Sur un plan technique, un consommateur représente tout système ou code d'application code (pas nécessairement un composant OLE DB) qui accède aux données par l'intermédiaire d'interfaces OLE DB. Les interfaces sont implémentées dans un fournisseur. Ainsi, un fournisseur correspond à tout composant logiciel implémentant des interfaces OLE DB pour encapsuler l'accès aux données et exposer celles-ci à d'autres objets (c'est-à-dire les consommateurs).
En termes de rôles, donc, un consommateur appelle les méthodes sur des interfaces OLE DB ; un fournisseur OLE DB implémente les interfaces OLE DB requises.
OLE DB évite les termes « client » et « serveur » car ces rôles ne sont pas toujours significatifs, notamment dans une situation multicouche. Un consommateur peut être un composant sur une couche qui prend en charge un autre composant ; parler alors de composant client risque de prêter à confusion. Un fournisseur se comporte également davantage en tant que pilote de base de données que comme un serveur.