레코드 집합의 경계
Recordset 데이터 세트의 시작과 끝을 각각 구분하는 BOF 및 EOF 속성을 지원합니다. BOF 및 EOF레코드 집합시작과 끝에 배치되는 "가상" 레코드로 간주할 수 있습니다. BOF 및 EOF을 계산하면 우리 샘플 Recordset 는 이제 다음과 같이 됩니다.
ProductID | ProductName | 단위 가격 |
---|---|---|
BOF | ||
7 | 밥 삼촌의 유기농 말린 배 | 30.0000 |
14 | 두부 | 23.2500 |
28 | Rssle 삭힌 양배추 | 45.6000 |
51 | 만지무프 말린 사과 | 53.0000 |
74 | 롱라이프 두부 | 10,000.0 |
EOF |
커서가 마지막 레코드를 지나면 EOF이 True로 설정됩니다. 그렇지 않으면 값이 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();
}
BOF 및 EOF가 모두 True인 경우, Recordset 개체는 비어 있습니다. 새로 열린 비어 있지 않은 Recordset 개체의 두 속성 모두 False입니다. 다음 JScript 코드 조각과 같이 BOF 및 EOF 속성을 함께 사용하여 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 개체에서 마지막 남은 레코드를 삭제하면 커서가 확정되지 않은 상태로 유지됩니다. BOF 및 EOF 속성은 공급자에 따라, 현재 레코드의 위치를 변경하려고 할 때까지 False 상태로 유지될 수 있습니다. 자세한 내용은 delete 메서드 사용하여 레코드 삭제참조하세요.