全部显示

RecordsetType 属性

       

使用 RecordsetType 属性可以指定何种类型的记录集可以在窗体中使用。可读写。

expression.RecordsetType

expression   必需。返回“Applies To”列表中的一个对象的表达式。

说明

RecordsetType 属性在 Microsoft Access 数据库 (.mdb) 中使用以下设置:

设置 Visual Basic 说明
动态集 0 (默认值)对基于单个表或基于具有一对一关系的多个表的绑定控件可以编辑。对于与具有一对多关系的表中的字段绑定的控件,不能编辑位于关系中的“一”方的联接字段中的数据,除非允许表间的级联更新。有关详细信息,请参阅从查询中更新记录时主题中的有关解释。
动态集(不一致的更新) 1 所有绑定到其字段的表和控件都可以编辑。
快照 2 绑定到其字段的表和控件都不能编辑。

如果不希望当窗体位于“窗体”视图“数据表”视图时,绑定控件中的数据被编辑,则可以将 RecordsetType 属性设置为“快照”。

RecordsetType 属性在 Microsoft Access 项目 (.adp) 中使用以下设置:

设置 Visual Basic 说明
快照 3 绑定到其字段的表和控件都不能编辑。
可更新快照 4 (默认值)所有绑定到其字段的表和控件都可以编辑。

可以使用窗体的属性表Visual Basic 来设置该属性。

注意   更改打开的窗体或报表的 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