Compartilhar via


Devo usar DAO ou ODBC?

ObservaçãoObservaçã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çãoObservaçã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.

Consulte também

Outros recursos

Perguntas freqüentes sobre o acesso a dados