Свойство AbsolutePosition (ADO)

Указывает порядковый номер текущей записи объекта Recordset .

Параметры и возвращаемые значения

Для 32-разрядного кода задает или возвращает значение Long от 1 до количества записей в объекте Recordset (RecordCount) или возвращает одно из значений PositionEnum .

Для 64-разрядного кода используйте тип данных, который обеспечивает хранение 64-разрядного значения. Например, можно использовать значение Long или другое значение длиной 64 бита, например DBORDINAL. Не используйте значения PositionEnum , так как они ограничены 32-разрядной длиной.

Комментарии

Чтобы задать свойство AbsolutePosition , ADO требует, чтобы поставщик OLE DB, который вы используете, реализовал интерфейс IRowsetLocate:IRowset .

При доступе к свойству AbsolutePositionнабора записей , открытого только с помощью прямого или динамического курсора, возникает ошибка adErrFeatureNotAvailable. При использовании курсоров других типов возвращается правильное положение, если поставщик OLE DB поддерживает интерфейс IRowsetScroll:IRowsetLocate . Если поставщик не поддерживает интерфейс IRowsetScroll , свойству присваивается значение adPosUnknown. Чтобы определить, поддерживает ли поставщик IRowsetScroll, ознакомьтесь с документацией по поставщику.

Свойство AbsolutePosition используется для перемещения к записи на основе ее порядкового положения в объекте Recordset или для определения порядкового положения текущей записи. Поставщик должен поддерживать соответствующие функциональные возможности, чтобы это свойство было доступно.

Как и свойство AbsolutePage , AbsolutePosition имеет значение 1 и равно 1, если текущая запись является первой записью в наборе записей. Общее количество записей в объекте Recordset можно получить из свойства RecordCount .

При установке свойства AbsolutePosition , даже если оно относится к записи в текущем кэше, ADO перезагружает кэш с новой группой записей, начиная с указанной записи. Размер этой группы определяется свойством CacheSize .

Примечание

Не следует использовать свойство AbsolutePosition в качестве суррогатного номера записи. Положение данной записи изменяется при удалении предыдущей записи. Кроме того, нет никакой гарантии того, что данная запись будет иметь тот же AbsolutePosition , если объект Recordset будет повторно задан или вновь открыт. Закладки по-прежнему являются рекомендуемыми способами сохранения и возврата в заданную позицию и являются единственным способом позиционирования во всех типах объектов Recordset .

Применение

Объект Recordset (ADO)

См. также:

Пример свойств AbsolutePosition и CursorLocation (VB)
Пример свойств AbsolutePosition и CursorLocation (VC++)
Свойство AbsolutePage (ADO)
Свойство RecordCount (ADO)