OLE DB-Consumer und -Anbieter
Aktualisiert: November 2007
Die OLE DB-Architektur verwendet das Modell von Consumern und Anbietern. Ein Consumer stellt eine Anfrage nach Daten. Ein Anbieter beantwortet diese Anfragen, indem er Daten in ein tabellarisches Format einfügt und sie an den Consumer übermittelt. Jeder mögliche Aufruf durch den Consumer muss im Anbieter implementiert sein.
Technisch definiert ist ein Consumer jede Art von System oder Anwendungscode (nicht notwendigerweise eine OLE DB-Komponente), dessen Datenzugriff über OLE DB-Schnittstellen erfolgt. Die Schnittstellen sind in einem Anbieter implementiert. Ein Anbieter ist jede Art von Softwarekomponente, die OLE DB-Schnittstellen so implementiert, dass der Datenzugriff eingekapselt und anderen Objekten (d. h. Consumern) verfügbar gemacht wird.
Betrachtet man die Rollenverteilung, ruft ein Consumer Methoden an OLE DB-Schnittstellen auf. Ein OLE DB-Anbieter implementiert die benötigten OLE DB-Schnittstellen.
OLE DB vermeidet die Begriffe Client und Server, da diese Rollen nicht immer und insbesondere in n-stufigen Situationen nicht sinnvoll sind. Ein Consumer könnte eine Komponente auf einer Ebene sein, die einer anderen Komponente dient. Dies eine Client-Komponente zu nennen wäre also irreführend. Darüber hinaus verhält sich ein Anbieter manchmal eher wie ein Datenbanktreiber als ein Server.