다음을 통해 공유


책갈피 사용

모든 레코드를 스크롤하고 값을 비교할 필요 없이 Recordset 이동한 후 특정 레코드로 직접 반환하는 것이 유용한 경우가 많습니다. 예를 들어 Find 메서드를 사용하여 레코드를 검색하려고 하지만 검색에서 레코드를 반환하지 않으면 레코드 집합양쪽 끝에 자동으로 배치됩니다. 공급자가 지원하는 경우 책갈피를 사용하여 위치로 돌아갈 수 있도록 Find 메서드를 사용하기 전에 위치를 표시할 수 있습니다. 책갈피는 Recordset 개체의 레코드를 고유하게 식별하는 Variant 형식 값입니다.

Recordset Filter 메서드와 함께 책갈피의 변형 배열을 사용하여 선택한 레코드 집합을 필터링할 수도 있습니다. 이 기술에 대한 자세한 내용은 이 섹션 후반의 주제에서, "결과 필터링" 항목 내에 있는 레코드 집합 작업을 참조하세요.

책갈피 속성을 사용하여 레코드의 책갈피를 얻거나 Recordset 개체의 현재 레코드를 유효한 책갈피로 식별된 레코드로 설정할 수 있습니다. 다음 코드에서는 책갈피 속성을 사용하여 책갈피를 설정한 다음 다른 레코드로 이동한 후 책갈피가 지정된 레코드로 돌아갑니다. 레코드셋의 책갈피 지원 여부를 확인하려면 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  

Supports 메서드는 나중에 자세히 설명합니다.

복제된 레코드 집합의 경우를 제외하면, 책갈피는 만들어진 레코드 집합에 고유하며, 동일한 명령을 사용하더라도 그렇습니다. 즉, 동일한 명령으로 열린 두 번째 Recordset에서 동일한 레코드로 이동하기 위해, 하나의 Recordset에서 가져온 책갈피를 사용할 수 없습니다.