Compartilhar via


Visão geral de programação do OLE DB

Qual é o OLE DB, e o que torna distinta de outras tecnologias de banco de dados? OLE DB é uma tecnologia de banco de dados de alto desempenho, baseado em COM produzidas pela Microsoft. O que define o OLE DB além de outras tecnologias de banco de dados da Microsoft é como ele fornece acesso a dados Universal.

Acesso a dados universal

Universal Data Access fornece uma maneira comum de acesso a dados independentemente do formulário no qual está armazenado. Em uma situação típica de negócios, uma grande quantidade de informações é armazenada fora dos bancos de dados corporativos. Essa informação encontra-se em sistemas de arquivos (como, por exemplo, FAT ou NTFS), arquivos indexados seqüenciais, bancos de dados pessoais (como o Access), planilhas (como o Excel), aplicativos de planejamento de projeto (como o projeto) e email (como o Outlook).

Acessando esses dados usando o apresenta diversos de aplicativos associados um principal gargalo no fluxo de trabalho ou pelo menos um aborrecimento. A maioria das empresas se vêem nessa situação e lidar com o problema ao consolidar as informações em um sistema de gerenciamento de banco de dados (DBMS). Entretanto, como um movimento é cara, demorada e em muitos casos não é práticos.

A alternativa é desenvolver uma solução de acesso a dados Universal. OLE DB e ADO oferecem a capacidade de acesso a dados Universal. Dos dois, o OLE DB é o desempenho mais intenso e é recomendado para uso com aplicativos do Visual C++.

Acesso a dados universal implica dois recursos: a primeira é a consulta distribuída ou acesso uniforme para várias fontes de dados (distribuído) e o segundo é a capacidade de disponibilizar não DBMS fontes de dados para aplicativos de banco de dados.

  • Consulta distribuída

    A capacidade de acessar dados uniformemente em múltiplos (isto é, distribuídos) fontes de dados. As fontes de dados podem ser do mesmo tipo (como dois separados acessar bancos de dados) ou de tipos diferentes (como, por exemplo, um banco de dados de SQL Server e um banco de dados do Access). Uniformemente significa que você pode executar significativamente a mesma consulta em todas as fontes de dados.

  • Acesso de não-DBMS

    A capacidade de disponibilizar não DBMS fontes de dados para aplicativos de banco de dados. IMS, DB2, Oracle, SQL Server, acesso e Paradox são exemplos de fontes de dados do DBMS. Fontes de dados não DBMS exemplos de informações em sistemas de arquivos, e-mail, planilhas e ferramentas de gerenciamento de projeto.

Considere um cenário no qual um departamento de vendas precisa localizar todas as mensagens de email recebidas dentro de um período de uma semana de clientes em uma determinada área. Esta consulta pode exigir uma pesquisa no arquivo de caixa de correio de um aplicativo de email e uma pesquisa em uma tabela de acesso de clientes para especificar os clientes nomes. Enquanto o Access é um aplicativo de DBMS, o Outlook não é.

OLE DB permite que você desenvolver aplicativos que acessam várias fontes de dados, estejam eles DBMS ou não. OLE DB possibilita o acesso universal usando interfaces COM que suportam a funcionalidade DBMS apropriada para uma determinada fonte de dados. Reduz a duplicação desnecessária de serviços e maximizada não apenas entre fontes de dados, mas também entre os outros aplicativos de interoperabilidade COM.

Benefícios do COM

É onde entra COM. OLE DB é um conjunto de interfaces COM. Acessando dados através de um conjunto uniforme de interfaces, você pode organizar a um banco de dados em uma matriz de componentes trabalham em conjunto.

Com base na especificação COM, o OLE DB define uma coleção extensível e manutenção de interfaces que fator e encapsular partes consistentes e reutilizáveis de funcionalidade do DBMS. Essas interfaces definem os limites de componentes do DBMS como, por exemplo, recipientes de linha, processadores de consulta e os coordenadores de transação, que permitem acesso transacional uniforme a fontes de diversas informações.

Normalmente, os aplicativos de banco de dados OLE são escritos como DLLs, mas sua implementação COM supera as desvantagens das DLLs (como problemas de versão e de nomeação) usando código modular. OLE DB, você chama as interfaces, ou acessar outros componentes usando seus globally unique identifiers (GUIDs).

Finalmente, COM mantém controle da utilização do componente usando o recurso de contagem de referência. Quando você chama um método em uma interface, a contagem de referência será incrementada; Quando o método retorna, a contagem de referência é diminuída. Quando a contagem for igual a zero, o componente ao qual o método pertence é liberado.

Consulte também

Conceitos

Programação do OLE DB

Modelos do OLE DB consumidor (C++)

Modelos do OLE DB Provider (C++)

Outros recursos

OLE DB Templates