ADO) (Index 属性
适用于:Access 2013、Office 2013
指示当前对 Recordset 对象有效的索引的名称。
设置和返回值
设置或返回一个 String 值,该值为索引名称。
备注
由 Index 属性命名的索引必须事先已经在 Recordset 对象的基本表上进行声明。 即索引必须已在程序中声明为 ADOX Index 对象,或在创建基本表时声明。
如果无法设置索引,则会发生运行时错误。 以下情况下无法设置 Index 属性:
在 WillChangeRecordset 或 RecordsetChangeComplete 事件处理程序中。
如果 Recordset 仍在执行某个操作(可由 State 属性确定)。
如果已通过 Filter 属性在 Recordset 上设置了筛选器。
如果关闭了 Recordset ,则始终能够成功设置 Index 属性,但是如果基础提供程序不支持索引,则 Recordset 将无法成功打开,或索引将无法使用。
如果可以设置索引,则可以更改当前行位置。 这将会导致 AbsolutePosition 属性的更新,并会导致生成 WillChangeRecordset 、 RecordsetChangeComplete 、 WillMove 和 MoveComplete 事件。
如果可以设置索引,并且 LockType 属性是 adLockPessimistic 或 adLockOptimistic,则执行隐式 UpdateBatch 操作。 这会释放当前组和受影响的组。 释放任何现有筛选器,当前行位置将更改为重新排序的 Recordset 的第一行。
Index 属性与 Seek 方法一起使用。 如果基础提供程序不支持 Index 属性,因此 不支持 Seek 方法,请考虑改用 Find 方法。 使用 Supports (adIndex) 方法确定 Recordset 对象是否支持索引。
尽管二者均处理索引,但内置 Index 属性与动态 Optimize 属性无关。