Поделиться через


CDaoRecordset::IsEOF

Эта функция-член вызывается при прокрутке от записи к записи для изучения шли ли за последней записью набора записей.

BOOL IsEOF( ) const;

Возвращаемое значение

Ненулевой если набор записей не содержит записи или если прокрутили за последней записью; в противном случае – значение 0.

Заметки

Можно также вызвать IsEOF чтобы определить, содержит ли набор записей какие-либо записи или пуст.Сразу после вызова Открыть, если набор записей не содержит записи, то IsEOF возвращает ненулевое значение.При открытии набора записей, который содержит хотя бы одну запись, первая запись, возвращают 0 текущей записи и IsEOF.

Если последняя запись текущей записи, то при вызове MoveNext, IsEOF далее возвращает ненулевое значение.Если IsEOF возвращает ненулевое и вызове MoveNext, возникает исключение.Если IsEOF возвращает ненулевое, текущая запись не определена, и любое действие, требует текущей записи приведет к исключению.

Эффект определенных методов IsBOF и параметрах IsEOF:

  • Вызов Открыть внутренне делает первой записью в наборе записей текущей записи путем вызова MoveFirst.Таким образом, вызов Открыть в пустом набор записей будет IsBOF и IsEOF возвратить ненулевое значение.(См. следующую таблицу для расширения функциональности неудачного вызова MoveFirst).

  • Все операции, которые перемещаются успешно обнаруживают найти запись является причиной и IsBOF и IsEOF для возврата 0.

  • Вызов AddNew после вызова Обновить, который был успешно добавлен новый IsBOF возвращать записи приведет к 0, но только в том случае, если IsEOF уже не равно нулю.Состояние IsEOF всегда остается неизменным.Как определено компонента database engine для jet (Майкрософт), указатель текущей записи пустого набора записей в конце файла, поэтому любой новая запись вставляется после текущей записи.

  • Любой вызов Удалить, даже если он удаляет линию остальные записи из набора записей не изменяет значение IsBOF или IsEOF.

В данной таблице показан разрешены, операции перемещения с различными сочетание IsBOF/IsEOF.

 

MoveFirst, MoveLast

MovePrev,

Перемещение < 0

Перемещение 0

MoveNext

Перемещение > 0

=nonzero,IsBOF

IsEOF=0

Разрешено

Исключение

Исключение

Разрешено

IsBOF=0,

=nonzero IsEOF

Разрешено

Разрешено

Исключение

Исключение

Оба ненулевые

Исключение

Исключение

Исключение

Исключение

Оба 0

Разрешено

Разрешено

Разрешено

Разрешено

Включение операция перемещения не означает, что операция успешно устроит запись.Оно лишь указывает, что разрешена и не будет предпринята попытка выполнить указанную операцию перемещения исключение.Значение IsBOF функций-членов и IsEOF может меняться в результате предпринятого перемещения.

Эффект перемещения операций, которые не обнаруживают найти запись на значении IsBOF и параметров IsEOF отображается в следующей таблице.

 

IsBOF

IsEOF

MoveFirst, MoveLast

Ненулевой

Ненулевой

Переместить 0

Без изменений

Без изменений

MovePrev, Переместить < 0

Ненулевой

Без изменений

MoveNext, Переместить > 0

Без изменений

Ненулевой

Дополнительные сведения см. в разделе "BOF свойства EOF" в Справке DAO.

Требования

Header: afxdao.h

См. также

Ссылки

Класс CDaoRecordset

Диаграмма иерархии

CDaoRecordset::IsBOF