Devo usar DAO ou ODBC?
Observação |
---|
Como do Visual C++.NET, o ambiente do Visual C++ e assistentes não há mais suportam DAO (embora as classes DAO são incluídas e você ainda pode usá-los).A Microsoft recomenda que você use modelos OLE DB ou ODBC para novos projetos.Você só deve usar DAO na manutenção de aplicativos existentes. |
Qual conjunto de classes do 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 de ODBC do MFC fornecem 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 Microsoft Jet database engine pode ler diretamente, use as classes do DAO.Para obter uma lista desses, consulte quais bancos de dados pode acessar com o DAO e 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 ao usar bancos de dados Microsoft Jet (. mdb).
Compatibilidade com as classes ODBC e com o Microsoft Access Basic e Microsoft Visual Basic.
Acesso às regras de validação.
Capacidade de especificar relações entre tabelas.
Um mais sofisticado acesso modelo de dados, com suporte para linguagem de definição de dados (DDL) e linguagem de manipulação de dados (DML).Para obter mais informações, consulte banco de dados de definição e manipulação de.
A tabela a seguir resume as principais diferenças para ajudá-lo a escolher.
Escolhendo entre DAO MFC e Classes ODBC
É possível |
Com as classes DAO? |
Com as classes ODBC? |
---|---|---|
Acesso.Arquivos MDB |
Sim |
Sim |
Acessar fontes de dados ODBC |
Sim |
Sim |
Disponível de 16 bits |
Não |
Sim |
Disponível para 32 bits |
Sim |
Sim |
Disponível para 64 bits |
Não |
Sim |
Compactação do banco de dados |
Sim |
Não |
Suporte ao mecanismo de banco de dados |
Mecanismo de banco de dados Microsoft Jet |
DBMS de destino |
Suporte DDL |
Sim |
Somente através de chamadas ODBC diretas |
Suporte DML |
Sim |
Sim |
Natureza da implementação do MFC |
"Wrapper" do DAO núcleo funções |
Abstração simplificada em vez de "wrapper" 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 ODBC referência do programador de e o arquivo de ajuda para seu driver de ODBC.