Devo usar o DAO ou ODBC?
Observação |
---|
Assim como do Visual C++.NET, o ambiente do Visual C++ e os assistentes não há mais suporte DAO (embora as classes DAO estão incluídas e você ainda pode usá-las). A Microsoft recomenda que você use modelos OLE DB ou ODBC para novos projetos. Você só deve usar o DAO em manutenção de aplicativos existentes. |
Qual conjunto de classes MFC você deve usar? Isso depende de suas necessidades:
Se você estiver trabalhando estritamente com fontes de dados ODBC, especialmente em situações de cliente/servidor, onde as classes do MFC ODBC oferecem melhor desempenho, use as classes ODBC.
Se você estiver trabalhando principalmente com bancos de dados Microsoft Jet (. mdb) ou com outros formatos de banco de dados, o mecanismo de banco de dados Microsoft Jet pode ler diretamente, use as classes do DAO. Para obter uma lista desses, consulte o que bancos de dados pode acessar com o DAO, ODBC?
Acessar fontes de dados ODBC através das classes DAO quando desejar que a velocidade do mecanismo de banco de dados Microsoft Jet e a funcionalidade das classes DAO.
Observação DAO requer espaço adicional no disco rígido.
As classes DAO têm as seguintes vantagens:
Melhor desempenho em alguns casos, particularmente quando usar bancos de dados Microsoft Jet (. mdb).
Compatibilidade com as classes ODBC e com o Microsoft Access Basic e do Microsoft Visual Basic.
Acesso às regras de validação.
Capacidade de especificar relações entre tabelas.
Um mais rico acesso modelo de dados, com suporte para linguagem de definição de dados (DDL) e a linguagem de manipulação de dados (DML). Para obter mais informações, consulte a definição de banco de dados e manipulação.
A tabela a seguir resume as principais diferenças para ajudá-lo a escolher.
Escolhendo entre MFC DAO e Classes ODBC
É possível |
Com as classes DAO? |
Com as classes ODBC? |
---|---|---|
Acesso.Arquivos MDB |
Yes |
Yes |
Acessar fontes de dados ODBC |
Yes |
Yes |
Disponível para 16 bits |
No |
Yes |
Disponível para 32 bits |
Yes |
Yes |
Disponível para 64 bits |
No |
Yes |
Compactação do banco de dados |
Yes |
No |
Suporte ao mecanismo de banco de dados |
Mecanismo de banco de dados Microsoft Jet |
DBMS de destino |
DDL support |
Yes |
Somente por meio de chamadas diretas do ODBC |
DML support |
Yes |
Yes |
Natureza da implementação do MFC |
"Empacotador" funções de núcleo do DAO |
Simplificado de abstração, em vez de "empacotador" da API do ODBC |
Ideal para |
arquivos. mdb (Microsoft Access) |
Qualquer DBMS para o qual você tem um driver, especialmente em situações de cliente/servidor |
Suporte a transações |
Por solução ou de dados ODBC, por banco de dados |
Por banco de dados |
Tenha em mente que os recursos de drivers ODBC variam. Para obter mais informações, consulte o ODBC referência do programador e o arquivo de ajuda para o seu driver de ODBC.