环境:WINXPPRO+VB6SP6我在窗体上添加了一个数据控件(Data1)。 With Data1
.DatabaseName = MyDatabase
.RecordsetType = 0
.RecordSource = "某表"
End With然后用几个文本框控件绑定字段的方法,来显示某条记录的内容。
首条、上一条、下一条、末条记录的浏览均没有问题,唯独想用下面的语句得到当前记录号时将发生错误。Data1.Recordset.AbsolutePosition一运行到这句就出错,提示“这种对象类型不支持该操作”,这是为什么呢?怎么解决?
指定 Recordset 对象当前记录的序号位置。设置和返回值设置或返回从 1 到 Recordset 对象 (PageCount) 所含页数的长整型值,或者返回以下常量。常量 说明
AdPosUnknown Recordset 为空,当前位置未知,或者提供者不支持 AbsolutePage 属性。
AdPosBOF 当前记录指针位于 BOF(即 BOF 属性为 True。)
adPosEOF 当前记录指针位于 EOF(即 EOF 属性为 True。)
说明使用 AbsolutePosition 属性可根据其在 Recordset 中的序号位置移动到记录,或确定当前记录的序号位置。提供者必须支持该属性的相应功能才能使用该属性。同 AbsolutePage 属性一样,AbsolutePosition 从 1 开始,并在当前记录为 Recordset 中的第一个记录时等于 1。从 RecordCount 属性可获得 Recordset 对象的总记录数。设置 AbsolutePosition 属性时,即使该属性指向位于当前缓存中的记录,ADO 也将使用以指定的记录开始的新记录组重新加载缓存。CacheSize 属性决定该记录组的大小。注意 不能将 AbsolutePosition 属性作为替代的记录编号使用。删除前面的记录时,给定记录的当前位置将发生改变。如果 Recordset 对象被重新查询或重新打开,则无法保证给定记录有相同的 AbsolutePosition。书签仍然是保持和返回给定位置的推荐方式,并且在所有类型的 Recordset 对象的定位时是唯一的方式。