Share via


Modelos do OLE DB Provider (C++)

OLE DB é uma parte importante da estratégia da Microsoft Universal Data Access. O design de banco de dados OLE permite o acesso de dados de alto desempenho de qualquer fonte de dados. Dados tabulares serão visíveis através de BDs OLE, independentemente se ele veio de um banco de dados. A flexibilidade lhe oferece uma enorme quantidade de energia.

Conforme explicado na consumidores do OLE DB e provedores de, OLE DB usa o conceito de consumidores e provedores. O consumidor faz solicitações de dados; o provedor retorna dados em um formato tabular para o consumidor. Uma perspectiva de programação, a implicação mais importante desse modelo é que o provedor deve implementar qualquer chamada que pode fazer com que o consumidor.

O que é um provedor?

Um provedor OLE DB é um conjunto de objetos COM que servem de interface de chamadas de um objeto do consumidor, a transferência de dados em um formato tabular de uma fonte durável (chamada de um armazenamento de dados) para o consumidor.

Provedores podem ser simples ou complexos. O provedor pode oferecer suporte a uma quantidade mínima de funcionalidade ou um provedor de qualidade de produção completo com a implementação de interfaces mais. Um provedor pode retornar uma tabela, permitem que o cliente determinar o formato de tabela e realizar operações em que os dados.

Cada provedor implementa um conjunto padrão de objetos COM para manipular as solicitações do cliente, com significado padrão que qualquer consumidor de OLE DB pode acessar dados de qualquer provedor, independentemente do idioma (como C++ e básico).

Cada objeto COM contém várias interfaces, alguns dos quais são necessários e alguns deles são opcionais. Implementando as interfaces obrigatórias, um provedor garante um nível mínimo de funcionalidade (chamada de conformidade) que qualquer cliente deve ser capaz de usar. Um provedor pode implementar interfaces opcionais para fornecer funcionalidade adicional. O OLE DB Provider modelo arquitetura descreve essas interfaces em detalhes. O cliente sempre deve chamar QueryInterface determinar se um provedor oferece suporte a uma determinada interface.

Suporte de nível de especificação de BD OLE

Os modelos de provedor do OLE DB suportam a especificação da versão 2.7 OLE DB. Usando os modelos de provedor do OLE DB, você pode implementar um provedor de compatível com o nível 0. O exemplo de provedor, por exemplo, usa os modelos para implementar um servidor de non-MS-DOS de comando que executa o comando DIR do para consultar o sistema de arquivos. O exemplo de provedor retorna as informações de diretório em um conjunto de linhas, o mecanismo de banco de dados OLE padrão para retornar dados tabulares.

O tipo mais simples de provedor suportado pelos modelos OLE DB é um provedor de somente leitura com nenhum comando. Provedores de comandos também são suportados, assim como com a capacidade de uso de indicadores e leitura/gravação. Você pode implementar um provedor de leitura/gravação ao escrever código adicional. Transações e conjuntos de linhas dinâmicos não são suportadas pela versão atual, mas você pode adicioná-los se desejar.

Quando você precisa criar um provedor do OLE DB?

Você sempre precisa criar seu próprio provedor; A Microsoft fornece vários provedores predefinidos e padrão na Propriedades de Link de dados caixa de diálogo no Visual C++. O principal motivo para criar um provedor OLE DB é aproveitar a estratégia de acesso a dados Universal. Portanto, algumas das vantagens de fazer são:

  • Acessando dados através de qualquer idioma, como C++, Basic e Visual Basic Scripting Edition. Ele permite que programadores diferentes em sua organização para acessar os mesmos dados da mesma forma, independentemente do idioma em que eles usam.

  • Fontes de expor seus dados a outros dados como, por exemplo, SQL Server, Excel e Access. Isso pode ser muito útil se você deseja transferir dados entre diferentes formatos.

  • Participando de operações (heterogêneos) de origem cross–data. Isso pode ser uma forma bastante eficaz de data warehouse. Usando provedores OLE DB, você pode manter os dados em seu formato nativo e ainda poderá acessá-lo em uma operação simple.

  • Adicionando recursos adicionais aos seus dados, como o processamento de consulta.

  • Aumentando o desempenho do acesso a dados, controlando como ele é manipulado.

  • O aumento de robustez. Se você tiver um formato de dados proprietários que apenas um programador pode acessar, correm o risco. Usando provedores OLE DB, você pode abrir esse formato proprietário para todos os seus programadores.

Provedores de somente leitura e atualizáveis

Provedores podem variar muito em complexidade e funcionalidade. É útil categorizar provedores em provedores de somente leitura e provedores atualizáveis:

  • Visual C++ 6.0 oferece suporte somente os provedores de somente leitura. Criando um provedor OLE DB discute como criar um provedor de somente leitura.

  • Visual C++.NET oferece suporte a provedores atualizáveis, que podem atualizar (gravar) o armazenamento de dados. Para obter informações sobre os provedores atualizáveis, consulte criar um provedor atualizável; o UpdatePV exemplo é um exemplo de um provedor atualizável.

For more information, see:

Consulte também

Referência

Documentação do SDK do BD OLE

referência do programador do OLE DB

Outros recursos

Acesso a dados (C++)