Provedores e consumidores do OLE DB
A arquitetura de banco de dados OLE usa o modelo de consumidores e provedores. Um consumidor faz solicitações de dados. Um provedor responde a essas solicitações, colocando os dados em um formato tabular e retorná-lo para o consumidor. Qualquer chamada que pode fazer com que o consumidor deve ser implementada no provedor.
Tecnicamente definido, um consumidor é qualquer aplicativo ou sistema de código (não necessariamente um componente do OLE DB) que acessa dados através de interfaces do OLE DB. As interfaces são implementadas em um provedor. Assim, um provedor é qualquer componente de software que implementa interfaces do OLE DB para encapsular o acesso aos dados e expô-la a outros objetos (ou seja, os consumidores).
Em termos de funções, o consumidor chama métodos nas interfaces do OLE DB; um provedor OLE DB implementa as interfaces necessárias do OLE DB.
OLE DB evita cliente de termos e servidor, porque essas funções não sempre faz sentido, especialmente em uma situação de n camadas. Porque um consumidor pode ser um componente em uma camada que serve a outro componente, chamá-lo um cliente componente seria confuso. Além disso, um provedor, às vezes, atua mais como um driver de banco de dados que um servidor.