指示 Recordset 对象的当前记录的序号位置。
设置和返回值
对于 32 位代码,设置或返回一个 Long 值,该值从 1 到 Recordset 对象(RecordCount)中的记录数,或返回一个 PositionEnum 值。
对于 64 位代码,请使用提供 64 位值的存储的数据类型。 例如,可以使用 Long 或 64 位长度为 64 位的另一个值,例如 DBORDINAL。 请勿使用 PositionEnum 值,因为它们的长度限制为 32 位。
注解
为了设置 AbsolutePosition 属性,ADO 要求你正在使用的 OLE DB 提供程序实现 IRowsetLocate:IRowset 接口。
访问使用仅向前或动态游标打开的 Recordset 的 AbsolutePosition 属性会引发错误 adErrFeatureNotAvailable。 对于其他游标类型,只要 OLE DB 提供程序支持 IRowsetScroll:IRowsetLocate 接口,就会返回正确的位置。 如果提供程序不支持 IRowsetScroll 接口,则属性设置为 adPosUnknown。 请参阅提供商的文档以确定它是否支持 IRowsetScroll。
使用 AbsolutePosition 属性根据记录 集 对象中的序号位置移动到记录,或确定当前记录的序号位置。 提供程序必须支持此属性的相应功能才能可用。
与 AbsolutePage 属性一样,当当前记录是 Recordset 中的第一条记录时,AbsolutePosition 是基于 1 的,等于 1。 可以从 RecordCount 属性获取 Recordset 对象中的记录总数。
设置 AbsolutePosition 属性时,即使它是当前缓存中的记录,ADO 也会使用从指定的记录开始的新记录组重新加载缓存。 CacheSize 属性确定此组的大小。
注释
不应将 AbsolutePosition 属性用作代理项记录编号。 删除前面的记录时,给定记录的位置会更改。 此外,如果重新查询或重新打开 Recordset 对象,则给定记录将具有相同的 AbsolutePosition。 书签仍然是保留并返回到给定位置的建议方法,也是跨所有类型的 Recordset 对象定位的唯一方法。
应用到
另请参阅
AbsolutePosition 和 CursorLocation 属性示例 (VB)
AbsolutePosition 和 CursorLocation 属性示例 (VC++)
AbsolutePage 属性 (ADO)
RecordCount 属性 (ADO)