Compartilhar via


CRecordset::Requery

Reconstrói (atualiza) um conjunto de registros.

virtual BOOL Requery( );

Valor de retorno

Diferente de zero se o recordset foi reconstruído com êxito; se não 0.

Comentários

Se qualquer registro é retornado, o primeiro registro torna-se o registro atual.

Para que o recordset reflete as adições e exclusões que você ou outros usuários estão fazendo a fonte de dados, você deve recriar o conjunto de registros chamando Requery. Se o conjunto de registros é um dynaset, reflete automaticamente atualizações que você ou outros usuários fazer seus registros existentes (mas não a adições). Se o conjunto de registros é um instantâneo, você deve chamar Requery para refletir edições por outros usuários bem como. adições e exclusões

Para um dynaset ou um instantâneo, uma chamada Requery quando você deseja recrie o conjunto de registros usando um filtro novo tipo ou, ou um novos valores de parâmetro. Definir a nova propriedade de filtro de tipo ou atribuir novos valores a m_strFilter e a m_strSort antes de chamar Requery. Novos parâmetros definidos atribuir novos valores para os membros de dados do parâmetro antes de chamar Requery. Se o filtro e as cadeias de caracteres de tipo são inalterada, você pode reutilizar a consulta, o que melhora o desempenho.

Se a tentativa de recriar o conjunto de registros falhar, o conjunto de registros é fechado. Antes de você chamar Requery, você pode determinar se o recordset pode ser requeried chamar a função de membro de CanRestart . CanRestart não garante que Requery funcionará com.

Aviso

Chamada Requery somente após você chamou Abrir.

Exceções

Esse método pode lançar exceções do tipo CDBException* e CMemoryException*.

Exemplo

Este exemplo reconstrói um conjunto de registros para aplicar uma ordem de classificação diferente.

CCustomer rsCustSet(&m_dbCust);

// Open the recordset
rsCustSet.Open();

// Use the recordset ... 

// Set the sort order and Requery the recordset
rsCustSet.m_strSort = _T("L_Name, ContactFirstName");
if(!rsCustSet.CanRestart())
   return;    // Unable to requery 

if(!rsCustSet.Requery())
   // Requery failed, so take action
   AfxMessageBox(_T("Requery failed!"));

Requisitos

Cabeçalho: afxdb.h

Consulte também

Referência

Classe CRecordset

Gráfico da hierarquia

CRecordset::CanRestart

CRecordset::m_strFilter

CRecordset::m_strSort