Uso de memória subidas com vários conjuntos de registros em uma única sessão Jet/conexão

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: 247140
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sintomas
A instalação para o Microsoft Data Access Components (MDAC) 2.1 ou posterior instala uma versão principal nova do driver ODBC do Microsoft Access. Esse novo driver de acesso ODBC usa o mecanismo de banco de dados Microsoft Jet 4.0, que permite acesso a bancos de dados do formato Microsoft Access 2000, bem como todos os formatos de banco de dados anteriores do Access. O driver de ODBC do Microsoft Access que foi incluído no MDAC 1.5 e 2.0 usa o mecanismo de banco de dados Microsoft Jet 3.5 para manipular o arquivo de banco de dados do Microsoft Access.

Por causa de alterações de design no Jet 4.0 assim como problemas de compatibilidade com versões anteriores no novo driver ODBC, instalação do driver ODBC do Access atualizado pode quebrar existentes, ODBC aplicativos instalados que usar o driver ODBC do Access, que pode forçar o desenvolvedor recodifique o aplicativo em alguns casos.
Causa
Microsoft Jet 4.0 não esteja liberando recursos em cache até que a conexão de banco de dados pai seja fechada. Observe que isso não é uma memória vazar; em vez disso, essa é uma alocação de recursos que nunca é liberada até que o objeto pai é fechado.
Resolução
Para resolver esse problema, instale o Microsoft Jet 4.0 service pack mais recente. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
239114Como: Obter o Service Pack mais recente para o Microsoft Jet 4.0 Database Engine
Como Contornar
Uma solução alternativa é periodicamente fechar e, em seguida, reabrir a conexão de pai para liberar a memória usada.

Outra solução é aplicar o hotfix descrito neste artigo Base de dados de Conhecimento Microsoft.
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados no começo deste artigo. Esse problema foi corrigido no Jet 4.0 Service Pack 6 (SP6).
Mais Informações
Em geral, esse problema ocorre quando você abrir e fechar vários conjuntos de registros em uma conexão de banco de dados único em junto com cada conjunto de registros de alguma forma de manipular. Por exemplo, se você adicionar ou excluir alguns registros de cada conjunto de registros que é aberto e fechado, o vazamento pode ocorrer. O problema também pode ocorrer se você usar uma instrução SQL com parâmetros. Se você apenas abre cada conjunto de registros e ler alguns registros por exemplo, o vazamento não ocorrerá. O vazamento é pequeno, portanto, você deve monitorar os bytes particulares usados pelo processo por um longo tempo para determinar se ou não o vazamento se aplica a uma ocorrência específica.

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 247140 - Última Revisão: 01/10/2015 01:54:38 - Revisão: 3.2

Driver Microsoft Open Database Connectivity para Access 4.0, Microsoft OLE DB Provider for Jet 4.0

  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbdatabase kbfix kbjet kbmdac210sp2fix kbmdacnosweep kbqfe KB247140 KbMtpt
Comentários