Partilhar via


O conjunto de registros: Rolagem (ODBC)

Este tópico se aplica às classes MFC ODBC.

Depois de abrir um conjunto de registros, você precisa para acessar os registros para exibir valores, fazer cálculos, gerar relatórios e assim por diante. Permite que mover um registro para outro dentro de seu conjunto de registros de rolagem.

Este tópico explica:

  • Como rolar de um registro para outro em um conjunto de registros.

  • Sob quais circunstâncias de rolagem e não há suporte para.

Rolagem de um registro para outro

Classe CRecordset fornece a Mover funções de membro para a rolagem em um conjunto de registros. Essas funções mover o registro atual por conjuntos de linhas. Se você implementou a busca de linha em massa, um Mover operação reposiciona o conjunto de registros pelo tamanho do conjunto de linhas. Se você não implementou a linha em massa, buscando, uma chamada para um Mover função reposiciona o conjunto de registros por um registro de cada vez. Para obter mais informações sobre a busca de linha em massa, consulte Recordset: Buscar registros em massa (ODBC).

ObservaçãoObservação

Ao mover-se por meio de um conjunto de registros, registros excluídos não poderão ser ignorados. Para obter mais informações, consulte o IsDeleted a função de membro.

Além de Mover funções, CRecordset fornece funções de membro para verificar se você percorreu após o final ou antes do início do conjunto de registros.

Para determinar se a rolagem é possível no seu conjunto de registros, chame o CanScroll função de membro.

Para rolar

  1. Encaminhar um registro ou um conjunto de linhas: chamar o MoveNext a função de membro.

  2. Registro de um para trás ou um conjunto de linhas: chamar o MovePrev a função de membro.

  3. Para o primeiro registro no recordset: chamar o MoveFirst a função de membro.

  4. Para o último registro no conjunto de registros ou para o último conjunto de linhas: chamar o MoveLast a função de membro.

  5. N registros em relação à posição atual: chamar o Mover a função de membro.

Para testar o final ou início do conjunto de registros

  1. Percorreu além do último registro? Chamar o IsEOF a função de membro.

  2. Percorreu antes do primeiro registro (mover para trás)? Chamar o IsBOF a função de membro.

O seguinte exemplo de código usa IsBOF e IsEOF para detectar os limites de um conjunto de registros durante a rolagem em qualquer direção.

// Open a recordset; first record is current
CCustSet rsCustSet( NULL );
rsCustSet.Open( );

if( rsCustSet.IsBOF( ) )
    return;
    // The recordset is empty

// Scroll to the end of the recordset, past
// the last record, so no record is current
while ( !rsCustSet.IsEOF( ) )
    rsCustSet.MoveNext( );

// Move to the last record
rsCustSet.MoveLast( );

// Scroll to beginning of the recordset, before
// the first record, so no record is current
while( !rsCustSet.IsBOF( ) )
    rsCustSet.MovePrev( );

// First record is current again
rsCustSet.MoveFirst( );

IsEOFRetorna um valor diferente de zero se o conjunto de registros é posicionado após o último registro. IsBOFRetorna um valor diferente de zero se o conjunto de registros está posicionado antes do primeiro registro (antes de todos os registros). Em ambos os casos, não há nenhum registro atual para operar em. Se você chamar MovePrev quando IsBOF já está TRUE ou ligue para MoveNext quando IsEOF já está TRUE, o framework lança uma CDBException. Você também pode usar IsBOF e IsEOF para verificar se há um conjunto de registros vazio.

Para obter mais informações sobre a navegação do conjunto de registros, consulte Recordset: Indicadores e posições absolutas (ODBC).

Quando a rolagem é suportado

Conforme originalmente projetada, SQL fornecido somente frente, mas ODBC amplia os recursos de rolagem. O nível de suporte para a rolagem disponível depende do seu aplicativo funciona com nível de conformidade de API ODBC do driver, drivers de ODBC e se a biblioteca de cursores ODBC é carregada na memória. Para obter mais informações, consulte ODBC e ODBC: A ODBC Cursor Library.

Dica

Você pode controlar se a biblioteca de cursor é usada. Consulte o bUseCursorLib e dwOptions parâmetros para CDatabase::Open.

ObservaçãoObservação

Ao contrário das classes do MFC DAO, as classes do MFC ODBC não fornecem um conjunto de Localizar funciona para localizar o registro seguinte (ou anterior) que atende aos critérios de especificado.

Consulte também

Referência

CRecordset::CanScroll

CRecordset::CheckRowsetError

Conceitos

O conjunto de registros (ODBC)

O conjunto de registros: Filtragem de registros (ODBC)