Index 属性

指示 Recordset 对象当前生效的索引的名称。

设置和返回值

设置或返回一个 字符串 值,该值是索引的名称。

言论

Index 属性命名的索引以前必须在 Recordset 对象的基础表上声明。 也就是说,索引必须以编程方式声明为 ADOX Index 对象,或者创建基表时。

如果无法设置索引,则会发生运行时错误。 Index 属性不能在以下条件下设置:

  • WillChangeRecordsetRecordsetChangeComplete 事件处理程序中。

  • 如果 Recordset 仍在执行操作(可由 State 属性确定)。

  • 如果已使用 Filter 属性在 Recordset 上设置筛选器。

如果关闭 Recordset,则始终可以成功设置 Index 属性,但如果基础提供程序不支持索引,Recordset 将无法成功打开,或者索引将不可用。

如果可以设置索引,则当前行位置可能会更改。 这将导致更新 AbsolutePosition 属性,并触发 WillChangeRecordsetRecordsetChangeCompleteWillMoveMoveComplete 事件。

如果可以设置索引,并且 LockType 属性 adLockPessimisticadLockOptimistic,则执行隐式 UpdateBatch 操作。 这会释放当前和受影响的组。 释放任何现有筛选器,并将当前行位置更改为重新排序 Recordset的第一行。

Index 属性与 Seek 方法结合使用。 如果基础提供程序不支持 Index 属性,因此 Seek 方法,请考虑改用 Find 方法。 使用 Supports(adIndex) 方法确定 Recordset 对象是否支持索引。

内置 Index 属性与动态 Optimize 属性无关,尽管它们都处理索引。

适用于

Recordset 对象 (ADO)

另请参阅

Seek 方法和索引属性示例 (VB)
Index 对象 (ADOX)
Seek 方法