Devo usar o DAO ou ODBC?

Observação:

sistema autônomo do Visual C++. NET, o ambiente do Visual C++ e sistema autônomo assistentes não suportam mais DAO (Embora sistema autônomo classes DAO estão incluídas e você ainda poderá 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:

  • Use as classes ODBC se você estiver trabalhando estritamente com fontes de dados ODBC, especialmente em situações de cliente/servidor, onde as classes MFC ODBC oferecem melhor desempenho.

  • Use as classes DAO se você estiver trabalhando basicamente com bancos de dados Microsoft Jet (.mdb) ou com outros formatos de banco de dados do mecanismo de banco de dados Microsoft Jet pode ler diretamente.Para obter uma lista desses, consulte O que podem Databases eu acesso com DAO e ODBC?

  • Acesso a fontes de dados do ODBC através das classes do DAO quando desejar que a velocidade do mecanismo de banco de dados Microsoft Jet e a funcionalidade extra de 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 acesso Basic e o Microsoft Visual Basic.

  • Acesso às regras de validação.

  • Capacidade de especificar relações entre tabelas.

  • Um mais rico modelo de acesso a dados, com suporte a DDL (linguagem de definição de dados) e DML (linguagem de manipulação de dados).Para obter mais informações, consulte Definição de banco de dados e manipulação.

A tabela a seguir resume as principais diferenças para ajudar você a escolher.

Escolhendo entre MFC DAO e classes ODBC

É possível

Com as classes de DAO?

Com as classes de ODBC?

Arquivos .mdb acesso

Sim

Sim

Acessar fontes de dados ODBC

Sim

Sim

Disponível para 16 bit

Não

Sim

Disponível para 32 bit

Sim

Sim

Disponível para 64 bit

Não

Sim

Compactação de 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 diretas do ODBC

Suporte DML

Sim

Sim

Natureza da implementação do MFC

"wrapper" funções do núcleo do DAO

Abstração simplificada em vez de "empacotador" da API do ODBC

Ideal para

arquivos .mdb (Microsoft acesso)

Qualquer DBMS para os quais 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 seu driver de ODBC.

Consulte também

Outros recursos

Perguntas freqüentes sobre o acesso a dados