CDaoRecordset::FillCache

void FillCache (long * pSize = NULL, COleVariant * pBookmark = NULL);
lançar (CDaoException, CMemoryException);

Parâmetros

pSize

Especifica o número de linhas para preencher o cache. Se você omitir esse parâmetro, o valor é determinado pela configuração da propriedade CacheSize do objeto DAO subjacente.

pBookmark

Um COleVariant especificando um indicador. O cache é preenchido a partir do registro indicado por este indicador. Se você omitir esse parâmetro, o cache é preenchido a partir do registro indicado pela propriedade CacheStart do objeto DAO subjacente.

Observações

Chame essa função de membro para armazenar em cache um número especificado de registros do conjunto de registros. Armazenamento em cache melhora o desempenho de um aplicativo que recupera ou busca, dados de um servidor remoto. Um cache é espaço na memória local que contém os dados obtidos recentemente do servidor no pressuposto de que os dados provavelmente ser solicitados novamente enquanto o aplicativo é executado. Quando dados são solicitados, o mecanismo de banco de dados Microsoft Jet verifica o cache para os dados pela primeira vez ao invés de buscá-lo no servidor, que leva mais tempo. Usar dados de cache em fontes de dados não-ODBC não tem nenhum efeito como os dados não são salvos no cache.

Ao invés de esperar para o armazenar em cache a serem preenchidas com registros de como eles são obtidos, explicitamente você pode preencher o cache a qualquer hora chamando a função membro FillCache . Esta é uma maneira mais rápida para preencher o cache porque FillCache busca vários registros ao mesmo tempo em vez de um de cada vez. Por exemplo, enquanto cada tela de registros está sendo exibida, você pode ter seu aplicativo chamar FillCache para buscar a próxima tela cheia de registros.

Qualquer banco de dados do ODBC acessado com objetos recordset pode ter um cache local. Para criar o cache, abrir um objeto recordset do origem de dados remoto e, em seguida, chamar o SetCacheSize e SetCacheStart membro funções do conjunto de registros. Se lSize e lBookmark criam um intervalo que é totalmente ou parcialmente fora do intervalo especificado pelo SetCacheSize e SetCacheStart, a parte do conjunto de registros fora desse intervalo será ignorada e não é carregada no cache. Se FillCache solicitar mais registros do que manter-se em fonte de dados remota, somente os registros restantes são obtidos, e nenhuma exceção é lançada.

Registros obtidos do cache não refletir as alterações feitas simultaneamente aos dados de origem por outros usuários.

FillCache busca apenas registros não estiver armazenada em cache. Para forçar uma Atualizar de todos os dados armazenados em cache, chame a função de membro SetCacheSize com um parâmetro lSize igual a 0, chamada SetCacheSize novamente com o parâmetro lSize igual ao tamanho do cache que você solicitou originalmente e, em seguida, chame FillCache.

Para obter mais informações sobre cache de registros, consulte o artigo DAO externo: melhorar o desempenho com fontes de dados externas no Guia do programador do Visual C++. Para obter informações relacionadas, consulte o tópico "Método FillCache" na Ajuda do DAO.

Visão geral de CDaoRecordsetMembros de classe | Gráfico de hierarquia

Co&nsulte tambémnbsp;CDaoRecordset::GetCacheSize, CDaoRecordset::GetCacheStart, CDaoRecordset::SetCacheSize, CDaoRecordset::SetCacheStart

Index