Partilhar via


Conjunto de registros: rolando (ODBC)

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

Depois de abrir um conjunto de registros, você precisa acessar os registros para exibir valores, faz cálculos, gerenciar relatórios, e assim por diante. A rolagem permite movimentação de registro para o registro dentro do conjunto de registros.

Este tópico explica:

  • Como rolagem de um registro outro em um conjunto de registros.

  • Rolar é e não tem suporte em quais circunstâncias.

Rolagem de um registro para outro

A classe CRecordset fornece funções de membro de Mover para rolar em um conjunto de registros. Essas funções mover o registro atual por conjuntos de linhas. Se você implementar a linha em massa que pesquisa, uma operação de Mover reposicionar o conjunto de registros pelo tamanho do conjunto de linhas. Se você não tiver implementado a linha em massa que pesquisa, uma chamada a uma função de Mover reposicionar o conjunto de registros por um registro de cada vez. Para obter mais informações sobre a linha em massa que pesquisa, consulte Conjunto de registros: Buscando registros em massa (ODBC).

Dica

Ao mover com um conjunto de registros, os registros excluídos não podem ser ignorados.Para obter mais informações, veja a função de membro de IsDeleted .

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

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

Para rolar

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

  2. Para trás um registro ou um conjunto de linhas: chame a função de membro de MovePrev .

  3. O primeiro registro no conjunto de registros: chame a função de membro de MoveFirst .

  4. Ao último registro no conjunto de registros ou ao conjunto de linhas do último: chame a função de membro de MoveLast .

  5. Registrosde Em relação à posição atual: chame a função de membro de Movimentação .

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

  1. Você enrolou o passado o último registro? Chame a função de membro de IsEOF .

  2. Você enrolou antes do primeiro registro (que se move para trás)? Chame a função de membro de IsBOF .

O exemplo de código usa IsBOF e IsEOF para detectar os limites do conjunto de registros ao rolar 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( );

IsEOF retorna um valor diferente de zero se o conjunto de registros é posicionado o passado o último registro. IsBOF retorna um valor diferente de zero se o conjunto de registros é posicionado antes do primeiro registro (antes de todos os registros). Em ambos os casos, não há nenhum registro atual a operar em. Se você chamar MovePrev quando IsBOFVerdadeiro ou chamada MoveNext quando IsEOFVerdadeiro, a estrutura gerencie CDBException. Você também pode usar IsBOF e IsEOF para verificar um conjunto de registros vazia.

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

Quando rolar suporte

Como foi criado originalmente, o SQL forneceu apenas a rolagem para frente, mas ODBC estende os recursos de rolagem. O nível de suporte disponível para rolar depende dos drivers ODBC seu trabalho de aplicativo com, nível de conformidade de ODBC API do driver, e se a biblioteca de cursores ODBC será carregada na memória. Para obter mais informações, consulte ODBC e ODBC: A biblioteca de cursores ODBC.

Dica

Você pode controlar se a biblioteca de cursores será usada.Consulte os parâmetros de bUseCursorLib e de dwOptions a CDatabase::Open.

Dica

Ao contrário das classes MFC DAO, as classes de MFC ODBC não fornecem um conjunto de funções de Localizar para localizar o registro a seguir (ou anterior) que atende aos critérios especificados.

Consulte também

Referência

CRecordset::CanScroll

CRecordset::CheckRowsetError

Conceitos

Conjunto de registros (ODBC)

Conjunto de registros: filtrando registros (ODBC)