CRecordset:: Requery

Virtual BOOL RieseguiQuery ( );
gettare ( CDBException, CMemoryException );

Valore restituito

Diverso da zero se il recordset è stato ricostruito con successo; in caso contrario 0.

Osservazioni

Chiamare questa funzione membro per ricostruire (Aggiorna) un recordset. Se vengono restituiti tutti i record, il primo record diventa il record corrente.

Affinché il recordset in modo da riflettere le aggiunte e le eliminazioni che voi o altri utenti stanno facendo all'origine dati, è necessario ricompilare il recordset chiamando ripetere una query. Se il recordset è un dynaset, essa riflette automaticamente gli aggiornamenti che voi o altri utenti fanno al suo record esistenti (ma non arrivi). Se il recordset è un'istantanea, è necessario chiamare Requery per riflettere le modifiche da altri utenti come aggiunte ed eliminazioni.

Per un dynaset o un'istantanea, chiamare Requery ogni volta che vuoi per ricostruire il recordset utilizzando un nuovo filtro o di ordinamento o di nuovi valori di parametro. Impostare il nuovo filtro o la proprietà sort assegnando i nuovi valori di m_strFilter e m_strSort prima di chiamare Requery. Impostare nuovi parametri assegnando i nuovi valori ai membri di dati del parametro prima di chiamare Requery. Se le stringhe di filtro e ordinamento vengono modificate, è possibile riutilizzare la query, che migliora le prestazioni.

Se il tentativo di ricostruire il recordset non riesce, il recordset viene chiuso. Prima di chiamare ripetere la query, è possibile determinare se il recordset può essere eseguito chiamando la funzione membro CanRestart . CanRestart non garantisce che ripetere la query successo.

Cautela   Chiamare Requery solo dopo avere chiamato Open.

Esempio

In questo esempio ricostruisce un recordset di applicare un ordinamento diverso.

/ / Esempio per CRecordset:: Requery

CCustSet rsCustSet (&NULL);

/ / Aperto il recordset
rsCustSet.Open ();

/ / Utilizzare il recordset...

/ / Set the sort order e ripetere la query del recordset
rsCustSet.m_strSort = "District, Last_Name";
Se (! rsCustSet.CanRestart ())
 nbsp; ritorno;    / / In grado di ripetere la query

Se (! rsCustSet.Requery ())
   / / RieseguiQuery non riuscito, in modo da prendere azione

Pa&noramica CRecordset |nbsp; Membri della classe | Gerarchia Chart

Vedere a&nchenbsp;CRecordset::CanRestart, CRecordset::m_strFilter, CRecordset::m_strSort

Index