Compartilhar via


Usando Favoritos

Geralmente, é útil retornar diretamente a um registro específico depois de ter se movido no conjunto de registros sem precisar rolar todos os registros e comparar valores. Por exemplo, se você tentar pesquisar um registro usando o método Localizar, mas a pesquisa não retornar registros, você será colocado automaticamente em uma das extremidades do Recordset. Se o provedor der suporte a eles, os marcadores poderão ser usados para marcar seu lugar antes de usar o método Localizar para que você possa retornar ao seu ponto. Um marcador é um valor de tipo Variant que identifica exclusivamente um registro em um objeto Recordset .

Você também pode usar uma matriz variante de favoritos com o método filtro de conjunto de registros para filtrar em um conjunto de registros selecionado. Para obter detalhes sobre essa técnica, consulte Filtrando os resultados no tópico, Trabalhando com conjuntos de registros, mais adiante nesta seção.

Você pode usar a propriedade Bookmark para obter um indicador para um registro ou definir o registro atual em um objeto Recordset para o registro identificado por um indicador válido. O código a seguir usa a propriedade Bookmark para definir um marcador e, em seguida, retornar ao registro marcado após navegar por outros registros. Para determinar se o do conjunto de registros dá suporte a indicadores, use o método Supports.

'BeginBookmarkEg  
Dim varBookmark As Variant  
Dim blnCanBkmrk As Boolean  
  
objRs.Open strSQL, strConnStr, adOpenStatic, adLockOptimistic, adCmdText  
  
If objRs.RecordCount > 4 Then  
    objRs.Move 4                       ' move to the fifth record  
    blnCanBkmrk = objRs.Supports(adBookmark)  
    If blnCanBkmrk = True Then  
        varBookmark = objRs.Bookmark   ' record the bookmark  
        objRs.MoveLast                 ' move to a different record  
        objRs.Bookmark = varBookmark   ' return to the bookmarked (sixth) record  
    End If  
End If  
'EndBookmarkEg  

O método Suporta é abordado com mais detalhes posteriormente.

Com exceção do caso de de conjuntos de registrosclonados, os indicadores são exclusivos do conjunto de registros em que foram criados, mesmo que o mesmo comando seja usado. Isso significa que você não pode usar um bookmark obtido de um conjunto de registros para mover para o mesmo registro em um segundo recordset aberto com o mesmo comando.