Compartilhar via


OLE DB Provider modelos (C++)

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

Conforme explicado em OLE DB consumidores 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.De uma perspectiva de programação, a implicação mais importante desse modelo é que o provedor deve implementar qualquer chamada que o consumidor pode fazer.

O que é um provedor?

Um provedor OLE DB é um conjunto de objetos COM que atender a chamadas de interface de um objeto do consumidor, a transferência de dados em um formato tabular de uma origem 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 implementando mais interfaces.Um provedor pode retornar uma tabela, permitem que o cliente determinar o formato de tabela e executar operações de dados.

Cada provedor implementa um conjunto padrão de objetos 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 Basic).

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

Nível de especificação OLE DB suporte

Os modelos de provedor do OLE DB suportam a especificação de OLE DB versão 2.7.Usando os modelos de provedor do OLE DB, você pode implementar um provedor compatível com o nível 0.O exemplo de provedor, por exemplo, usa os modelos para implementar um servidor de non-MS-DOS comando executa o comando DIR do para o sistema de arquivos de consulta.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 por modelos OLE DB é um provedor de somente leitura com nenhum comando.Provedores com comandos também são suportados, como recurso de marcadores e leitura/gravação.Você pode implementar um provedor de leitura/gravação escrevendo código adicional.Transações e conjuntos dinâmicos não são suportadas pela versão atual, mas você pode adicioná-los se desejar.

Quando você precisa criar um provedor OLE DB?

Você não precisa sempre criar seu próprio provedor; A Microsoft fornece vários provedores padrão predefinidos, no 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 linguagem, como C++, Basic e Visual Basic Scripting Edition.Ele permite que programadores diferentes na organização para acessar os mesmos dados da mesma forma, independentemente da linguagem que eles usam.

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

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

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

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

  • Aumentando a robustez.Se você tiver um formato de dados proprietários que apenas um programador pode acessar, estão em 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 suporte somente 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 provedores atualizáveis, consulte criar um provedor atualizável; o UpdatePV exemplo é um exemplo de um provedor atualizável.

Para obter mais informações, consulte:

Consulte também

Referência

Documentação do SDK do BD OLE

referência OLE DB Programmer

Outros recursos

Acesso a dados no Visual C++