Como melhorar o desempenho de aplicativos usando o Jet 4.0

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 240434
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sumário
O Microsoft OLE DB Provider for Jet versão 4.0 é instalado por versões do Microsoft Data Access Components (MDAC) 2.1 e 2.5 que por sua vez são instalados por vários aplicativos. Em várias áreas, Jet 4.0 fornece recursos adicionais e melhor desempenho de sua predecessora; no entanto, alguns aplicativos de ActiveX Data Objects (ADO), ODBC e OLE DB podem ver seu desempenho degradado.

Este artigo fornece as possíveis razões para desempenho do aplicativo e oferece dicas sobre como aprimorá-la.
Mais Informações

Motivos possíveis para desempenho ruim com o Jet 4.0

  • Verifique o DSN

    Se seu nome de fonte de dados (DSN) foi criado com uma versão antiga do driver ODBC do Microsoft Jet, o tamanho do buffer padrão ainda poderá ser 512 KB. Tamanho do buffer de padrão do Jet 4.0 é 2048 KB e com nada menos que seu aplicativo pode estar gastando maior parte do seu tempo permutação memória virtual.

  • o arquivo de banco de dados (.mdb) em um compartilhamento de rede?

    O driver de ODBC do Microsoft Access que vem com MDAC 2.1 ou posterior interpreta a configuração de PageTimeout em milissegundos, enquanto as versões de MDAC 2.0 do driver de ODBC do Access interpretam PageTimeout em segundos. Modifique o valor padrão de PageTimeout de 5 a 5000 ao criar o DSN ou modificar o valor por meio da seqüência de caracteres de conexão. Quando o arquivo de banco de dados é colocado em um compartilhamento de rede, ter um valor de tempo limite baixo (como 5 milissegundos) faz com que um tráfego de rede excessivo e pode degradar o desempenho. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
    246560Erro: Atividade de rede excessivo ao usar o driver ODBC do Access
  • é o banco de dados no formato de 9 x do Access?

    O mecanismo do Jet 4.0 usa seqüências de caracteres Unicode internamente. Como 9 x bancos de dados não são Unicode, o novo driver Jet é parou devido a conversões em todas as seqüências de caracteres provenientes e indo para o banco de dados Jet. Como os bancos de dados do Access 2000 armazenam cadeias de caracteres em Unicode, não é necessário; nenhuma conversão para um melhor desempenho, converter todos os bancos de dados para Access 2000.

  • tem certeza de que seu banco de dados não está danificado?

    Embora um banco de dados danificado pode ser capaz de abrir com êxito, o acesso a dados é muito mais lento devido a índices danificados ou linhas da tabela. Execute os utilitários Reparar e compactar bancos de dados no ambiente de desenvolvimento do Microsoft Access para reparar um banco de dados danificado. Programaticamente, você pode usar o método CompactDatabase Jet and Replication Objects (JRO), IJetCompact::Compact método do provedor Jet OLE DB ou o método Data Access Objects (DAO) CDaoDatabase::CompactDatabase para fazer isso.

  • é alterado de seu aplicativo localidades?

    Versão 4.0.2115.25 do Jet 4.0 (Msjet40.dll) tem um problema que faz com que consultas para lento depois que um aplicativo altera o identificador de localidade (LCID); por exemplo, usando a função setlocale de CRT. Alterar a localidade padrão pode diminuir o determinadas C Runtime String funções, como strcmp() , que são usadas pelo Jet. Esse problema é corrigido nas versões mais recentes; consulte a seção "Referências" para obter informações como baixar a versão mais recente do Jet.
  • está o sinalizador UnicodeCompression?

Ao armazenar dados em um disco, o Jet compacta suas seqüências de caracteres Unicode. Compactação pode ser desativada, definindo a propriedade UnicodeCompression como não; isso pode causar bloating do banco de dados e como resultado, consultas ficar mais lentas devido para o disco extra E/s para buscar mais dados. Lembre-se que a E/s de disco é geralmente mais lento que algoritmos de descompactação. Para obter mais informações, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:
239527Banco de dados Bloats ao importar arquivo de texto grande

Dicas sobre como melhorar o desempenho de seu aplicativo de Jet

  • compilar em Unicode e use um Access 2000 formato de banco de dados do arquivo.

    Como mencionado anteriormente, o Jet 4.0 usa as cadeias de caracteres Unicode internamente, para que um aplicativo não-Unicode é executado mais lentamente porque Jet deve realizar conversões em todas as seqüências de caracteres. Aplicativos Unicode não são necessário passar por essa conversão. Para obter um melhor desempenho, converta o banco de dados para o formato Access 2000 (Unicode) e compilar seu aplicativo em Unicode.

  • otimizar sua consulta com a Ajuda do JETSHOWPLAN.

    Use o sinalizador de registro JETSHOWPLAN para ver plano do Jet de execução para a sua consulta. Consulte "A função ShowPlan" no guia do programador do Microsoft Jet Engine .

  • usar ADO ou OLE DB.

    Para desempenho ideal do aplicativo, os programadores do Microsoft Visual Basic podem usar o ActiveX Data Objects (ADO) para programação de banco de dados. Microsoft Visual C++ 6.0 (e posteriores) programadores podem usar a ATL (Active Template Library) OLE DB consumidor modelos para acesso mais simples e eficiente a seu banco de dados.

  • uso nativo Jet 4.0 OLE DB Provider.

    Os programadores de Visual Basic e Visual C++ que usam OLE ou ADO para programação de banco de dados tem uma opção de dois provedores OLEDB para acessar seu banco de dados Jet: o provedor OLE DB para ODBC drivers ou o Microsoft Jet 4.0 OLE DB Provider. O Jet 4.0 OLE DB Provider é o caminho mais direto e eficiente para seu banco de dados porque o provedor OLE DB para ODBC deve passar por um driver de ODBC para acessar seu banco de dados.
Referências
Para obter informações adicionais sobre outros problemas conhecidos que podem ocorrer quando você atualizar a partir do Jet 3.5 x para o Jet 4.0, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
237994Problemas de atualização MDAC com driver ODBC do Access
Jet 4.0 está disponível com Microsoft Data Access Components versões 2.1, 2.5 e 2.5 SP1, que pode ser baixado do site da Microsoft: Para obter informações adicionais e o service pack mais recente para o Jet 4.0, consulte o seguinte artigo:
239114Como obter o Service Pack mais recente para o Microsoft Jet 4.0 Database Engine
degradação lentidão lenta jet

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 240434 - Última Revisão: 12/05/2015 15:42:18 - Revisão: 4.3

Microsoft Data Access Components 2.1, Microsoft Data Access Components 2.5, Microsoft OLE DB Provider for Jet 4.0, Driver Microsoft Open Database Connectivity para Access 4.0

  • kbnosurvey kbarchive kbmt kbatm kbdao360 kbdatabase kbgrpdsvcdb kbhowto kbjet KB240434 KbMtpt
Comentários