다음을 통해 공유


레코드 집합의 경계

Recordset 데이터 세트의 시작과 끝을 각각 구분하는 BOFEOF 속성을 지원합니다. BOFEOF레코드 집합시작과 끝에 배치되는 "가상" 레코드로 간주할 수 있습니다. BOFEOF을 계산하면 우리 샘플 Recordset 는 이제 다음과 같이 됩니다.

ProductID ProductName 단위 가격
BOF
7 밥 삼촌의 유기농 말린 배 30.0000
14 두부 23.2500
28 Rssle 삭힌 양배추 45.6000
51 만지무프 말린 사과 53.0000
74 롱라이프 두부 10,000.0
EOF

커서가 마지막 레코드를 지나면 EOFTrue로 설정됩니다. 그렇지 않으면 값이 False입니다. 마찬가지로 커서가 첫 번째 레코드 앞에 이동하면 BOF true 로 설정됩니다. 그렇지 않으면 해당 값이 false . 이러한 속성은 일반적으로 다음 JScript 코드 조각에 설명된 대로 데이터 세트의 레코드를 열거하는 데 사용됩니다.

while (objRecordset.EOF != true)   
{  
   // Work on the current record.  
   ...  
   // Advance the cursor forward to the next record.  
   objRecordset.MoveNext();  
}  
or  
while (objRecordset.BOF != true)   
{  
   // Work on the current record.  
   ...  
   // Move the cursor to the previous record.  
   objRecordset.MovePrevious();  
}  

BOFEOF가 모두 True인 경우, Recordset 개체는 비어 있습니다. 새로 열린 비어 있지 않은 Recordset 개체의 두 속성 모두 False입니다. 다음 JScript 코드 조각과 같이 BOFEOF 속성을 함께 사용하여 Recordset 개체가 비어 있는지 여부를 확인할 수 있습니다.

if (objRecordset.EOF == true && objRecordset.BOF == true)  
{  
   WScript.Echo("we got an empty dataset.");  
}  
else  
{  
   WScript.Echo("we got a full dataset.");  
}  

이 체계는 모든 유형의 커서에 대해 작동하며 기본 공급자와 독립적입니다. RecordCount 속성 값이 0인지 여부를 확인하여 Recordset 개체의 공허함을 확인하려는 경우 결과의 레코드 수 반환을 지원하는 적절한 커서 및 공급자를 사용하도록 주의해야 합니다.

Recordset 개체에서 마지막 남은 레코드를 삭제하면 커서가 확정되지 않은 상태로 유지됩니다. BOFEOF 속성은 공급자에 따라, 현재 레코드의 위치를 변경하려고 할 때까지 False 상태로 유지될 수 있습니다. 자세한 내용은 delete 메서드 사용하여 레코드 삭제참조하세요.