ODBC (Conectividade de Banco de Dados Aberto)
Em 1992, a Microsoft Corporation foi estabelecida como parte integrante da Arquitetura de Serviços Abertos do Windows (WOSA) referente a bancos de dados, que estabeleceu um conjunto de especificações e fornecia um conjunto de APIs padrão (Interfaces de Programação de Aplicações) para acesso a bancos de dados. Essas APIs utilizam SQL para realizar a maioria de suas tarefas. O próprio ODBC também oferece suporte para a linguagem SQL, e os usuários podem enviar instruções SQL diretamente para o ODBC. --- os mais antigos, mas nem sempre onipotentes. ODBC (Open DataBase Connectivity) é uma interface de programação de aplicações (API) defendida pela Microsoft e atualmente amplamente aceita na indústria para acesso a banco de dados, baseada nas especificações X/Open e ISO/IEC de interface em nível de chamada (CLI) e utiliza a Structured Query Language (SQL) como sua linguagem de acesso a banco de dados. A estrutura geral do ODBC possui quatro componentes:
A. Aplicação: Executar o processamento e chamar funções da API ODBC para enviar instruções SQL e recuperar resultados. B. Gerenciador de Drivers: Carregar/desinstalar drivers de acordo com as necessidades do aplicativo, lidar com chamadas de funções ODBC ou transferi-las para o driver. C. Driver: Gerencia chamadas de funções ODBC, envia requisições SQL para uma fonte de dados especificada e retorna os resultados para a aplicação. Se necessário, o driver modifica a solicitação do programa para alinhá-la com a sintaxe suportada pelo DBMS relevante. D. Fonte de dados: incluindo os dados a serem acessados pelo usuário e seu sistema operacional relacionado, SGBD, e a plataforma de rede usada para acessar o SGBD.
DAO (Objeto de Acesso a Dados)
Em 1993, a Microsoft lançou o motor de banco de dados Microsoft Jet (originalmente usado para o Microsoft Access e agora suporta outros bancos de dados) e permite que desenvolvedores conectem diretamente às tabelas de Access assim como fazem com outros bancos via ODBC. DAOs são mais adequados para aplicações de sistema único ou para uso pequeno e distribuído localmente. O acesso ao banco de dados do Jet foi otimizado internamente e é fácil de usar. Portanto, se o banco de dados for um Access e for usado localmente, recomenda-se usar esse método de acesso --- especificidade da aplicação
RDO (Objetos de Dados Remotos)
Em 1995, o RDO era uma interface de acesso a dados orientada a objetos para o ODBC, combinada com um estilo DAO fácil de usar para fornecer uma interface que exibia todas as funcionalidades e flexibilidade subjacentes ao ODBC. Embora o RDO seja limitado em termos de bom acesso a bancos de dados Jet ou ISAM, ele só possa acessar bancos de dados relacionais por meio de drivers ODBC existentes. No entanto, o RDO provou ser a melhor interface para muitos desenvolvedores de SQL Server, Oracle e outros grandes desenvolvedores relacionais de banco de dados. O RDO fornece objetos, propriedades e métodos cada vez mais complexos para acessar procedimentos armazenados e conjuntos de resultados complexos. --- é, sem dúvida, baseado no ODBC
OLE DB (Vinculação e Incorporação de Objetos, Banco de Dados)
Em 1997, a Microsoft lançou uma interface estratégica de programação em nível de sistema para gerenciar dados em toda a organização. OLE DB é uma especificação aberta construída sobre funcionalidades ODBC. O ODBC é desenvolvido especificamente para acessar bancos de dados relacionais, enquanto o OLE DB é usado para acessar fontes de informação relacionais e não relacionais, como bancos de dados ISAM/VSAM host e hierárquicos, armazenamento de e-mail e sistema de arquivos, texto, gráfico e dados geográficos, e objetos de negócios personalizados. O OLE DB DEFINE UM CONJUNTO DE INTERFACES COM QUE ENCAPSULAM VÁRIOS SERVIÇOS DE SISTEMAS DE GERENCIAMENTO DE BANCO DE DADOS E PERMITEM A CRIAÇÃO DE COMPONENTES DE SOFTWARE PARA IMPLEMENTAR ESSES SERVIÇOS. Os componentes do OLE DB incluem provedores de dados (contendo e representando dados), consumidores de dados (usando dados) e componentes de serviço (processamento e entrega de dados, como processadores de consulta e motores de cursor). A interface OLE DB facilita a integração suave dos componentes, permitindo que fornecedores de componentes OLE DB entreguem rapidamente componentes OLE DB de alta qualidade ao mercado. Além disso, o OLE DB inclui uma "ponte" para conectar o ODBC, fornecendo suporte consistente para os diversos drivers relacionais de banco de dados ODBC em uso. --- afirma substituir o ODBC, mas também é compatível com o ODBC
ADO (Objeto de Dados ActiveX)
Em 1996, a ADO foi a sucessora da DAO/RDO. O ADO 2.0 é funcionalmente mais semelhante ao RDO e, em geral, possui uma relação de mapeamento semelhante entre os dois modelos. ADO "estende" o modelo de objetos usado por DAOs e RDOs, ou seja, contém menos objetos, mais propriedades, métodos (e parâmetros) e eventos. Como o modo de acesso a banco de dados mais recente, o ADO também é simples e fácil de usar, então a Microsoft deixou claro que focará no ADO no futuro e não atualizará DAO/RDO, tornando-se o principal do desenvolvimento atual de banco de dados. O ADO envolve três tipos de armazenamento de dados: DSN (Data Source Name), ODBC (Open Data Connection) e OLE DB. As rotinas a seguir explicarão em detalhes a implementação específica desses três métodos. --- pode ser dito ser a convergência de interfaces de programação em nível de sistema, como ODBC e OLEDB, e a atualização de interfaces de programação em nível de aplicação, como DAO e RDO.
ADO.NET
é um modelo de programação baseado em padrões que pode ser usado para criar aplicações distribuídas para compartilhamento de dados. Em ADO.NET, os DataSets desempenham um papel importante, servindo como cópias em memória de alguns dos dados do banco de dados. Diferentemente dos RecordSets no ADO, os DataSets podem incluir qualquer tabela de dados, cada uma das quais pode ser usada para representar dados de uma tabela ou visualização de banco de dados. O DataSet reside na memória e não está conectado ao banco de dados original, ou seja, não precisa permanecer conectado ao banco de dados original. A tecnologia subjacente que faz esse trabalho é o XML, que é o formato de armazenamento e transferência usado pelos DataSets. Durante a execução, os dados em um DataSet precisam ser trocados entre componentes, como um objeto de lógica de negócio ou asp.net formulário web. Os dados são transferidos de um componente para outro na forma de um arquivo XML, que restaura o arquivo para o formulário DataSet. A abordagem DataSet é exatamente a mesma do modelo de dados relacional, porque os protocolos de cada fonte de dados são diferentes, e precisamos acessar a fonte de dados pelo protocolo correto. Algumas fontes de dados mais antigas usam o protocolo ODBC, e algumas fontes posteriores usam o protocolo OleDb, e agora ainda há muitas novas fontes de dados surgindo, ADO.NET fornecem uma forma comum de acessar fontes de dados, e para diferentes fontes de dados, elas usam bibliotecas diferentes. Essas bibliotecas são chamadas de Provedores de Dados e geralmente recebem nomes baseados no tipo de fonte de dados e no protocolo
Diferenças e conexões entre os bancos de dados ODBC, DAO, ADO e OLEDB
ODBC é uma tecnologia de acesso subjacente, então a API ODBC pode ser uma aplicação cliente que pode configurar e controlar o banco de dados de baixo para cima, e completar algumas funções que a tecnologia avançada de banco de dados não consegue completar; No entanto, a desvantagem é que o ODBC só pode ser usado para bancos de dados relacionais, dificultando o acesso a bancos de dados de objetos e outros bancos de dados não relacionais usando o ODBC. As DAOs fornecem um mecanismo para criar e manipular bancos de dados por meio de código procedural. A maior característica é que é fácil de operar com bancos de dados MICROSOFT JET, sendo uma das melhores interfaces técnicas para operar bancos de dados JET. E ele não é usado apenas para acessar esse banco de dados, na verdade, é possível acessar uma ampla variedade de formatos de dados, desde arquivos de texto até grandes bancos de dados em segundo plano, por meio da tecnologia DAO. ADO é uma interface de acesso baseada no OLE DB, que é uma tecnologia OLE DB orientada a objetos que herda as vantagens do OLE DB. É uma interface de alto nível para acesso a banco de dados.
A relação entre ADO e OLEDB
OLEDB é uma interface de acesso a dados subjacente. É usado por drivers de terceiros, comerciantes para desenvolver aplicações que geram fontes de dados para tecnologia ADO, ou desenvolvedores para C++ desenvolverem componentes personalizados de banco de dados. O OLE DB é uma importante interface de programação em nível de sistema para acesso a dados, sendo a tecnologia fundamental do ADO e a fonte de dados para ADO.NET. ADO é uma interface de acesso baseada no OLE DB, que é uma tecnologia OLE DB orientada a objetos que herda as vantagens do OLE DB. É uma interface de alto nível para acesso a banco de dados.
Pode-se dizer que o ADO fornece funções de API de aplicação de alto nível para OLEDB.
|