使用 RecordsetType 属性可以指定何种类型的记录集可以在窗体中使用。可读写。
expression.RecordsetType
expression 必需。返回“Applies To”列表中的一个对象的表达式。
RecordsetType 属性在 Microsoft Access 数据库 (.mdb) 中使用以下设置:
设置 | Visual Basic | 说明 |
---|---|---|
动态集 | 0 | (默认值)对基于单个表或基于具有一对一关系的多个表的绑定控件可以编辑。对于与具有一对多关系的表中的字段绑定的控件,不能编辑位于关系中的“一”方的联接字段中的数据,除非允许表间的级联更新。有关详细信息,请参阅从查询中更新记录时主题中的有关解释。 |
动态集(不一致的更新) | 1 | 所有绑定到其字段的表和控件都可以编辑。 |
快照 | 2 | 绑定到其字段的表和控件都不能编辑。 |
RecordsetType 属性在 Microsoft Access 项目 (.adp) 中使用以下设置:
设置 | Visual Basic | 说明 |
---|---|---|
快照 | 3 | 绑定到其字段的表和控件都不能编辑。 |
可更新快照 | 4 | (默认值)所有绑定到其字段的表和控件都可以编辑。 |
注意 更改打开的窗体或报表的 RecordsetType 属性时,将会引起自动重新创建记录集。
可以基于其字段绑定到窗体控件的多个基础表创建窗体。根据 RecordsetType 属性设置的不同,可以设置能够编辑哪些绑定控件。
除了由 RecordsetType 提供的编辑控件之外,窗体上的每个控件都有一个 Locked 属性,可用来指定控件及其基础数据是否可以编辑。如果 Locked 属性设为“是”,则不能编辑数据。
在下面的示例中,只有当用户 ID 为 ADMIN 时,才允许更新记录。如果公用变量 gstrUserID
的值不是 ADMIN,则该代码示例会将 RecordsetType 属性设置为“快照”。
Sub Form_Open(Cancel As Integer)
Const conSnapshot = 2
If gstrUserID <> "ADMIN" Then
Forms!Employees.RecordsetType = conSnapshot
End If
End Sub