Access VBA教程:RecordLocks属性

使用 RecordLocks属性可以确定记录如何锁定以及当两个用户试图同时编辑同一条记录时将发生什么。可读写。

expression.RecordLocks

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

说明

当您编辑记录时,Microsoft Access 会自动锁定该记录以防止其他用户在您完成编辑之前修改它。

注意   RecordLocks属性仅应用于Microsoft Access 数据库 (.mdb) 中的窗体、报表或查询。

RecordLocks属性使用以下设置:

设置 Visual Basic 说明
不锁定 0 (默认值)在窗体中,两个或更多用户能够同时编辑同一条记录。这也称为“开放式”锁定。如果两个用户试图保存对同一条记录的更改,则 Microsoft Access 将对第二个试图保存记录的用户显示一则消息。此后这个用户可以选择放弃该记录,将记录复制到剪贴板,或替换其他用户所做的更改。这种设置通常用在只读窗体或单用户数据库中。也可以用在多用户数据库中,允许多个用户同时更改同一条记录。

在报表中,预览或打印报表时并不锁定记录。

在查询中,运行查询时记录并不锁定。

所有记录 1 当在“窗体”视图或“数据表”视图中打开窗体,预览或打印报表,或者运行一个查询时,基础表或基础查询中的所有记录都将锁定。用户可以读取记录,但在关闭窗体、完成报表打印或查询运行完以前不能编辑、添加或删除任何记录。
已编辑的记录 2 (仅用于窗体和查询)只要用户开始编辑某条记录中的任一字段,即会锁定该页面记录,直到用户移动到其他记录,锁定才会解除。这样一条记录一次只能由一位用户进行编辑。这也称为“保守式”锁定。

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

注意   更改打开的窗体或报表的 RecordLocks属性,将会引起自动重新创建记录集。

在只有一个人使用基础表或基础查询,或者对数据进行更改的情况下,可以对窗体使用“不锁定”设置。

在多用户数据库中,如果想使用开放式锁定并对试图编辑窗体上同一条记录的用户发出警告,可以使用“不锁定”设置。如果想防止两个或更多用户同时编辑数据,则可以使用“已编辑的记录”设置。

在开始预览或打印一个报表,或运行追加查询、删除查询、生成表查询或更新查询后,如果需要确保没有对数据进行更改,可以使用“所有记录”设置。

在“窗体”视图或“数据表”视图中,每条锁定记录在它的记录选定器中都有一个锁定指示器。

提示   若要更改窗体的默认 RecordLocks属性设置,请单击“工具”菜单上的“选项”,然后单击“选项”对话框中的“高级”选项卡,并选择“默认记录锁定”下所需的选项。

来自开放数据库连接 (ODBC) 数据库的窗体、报表或查询中的数据,不管 RecordLocks属性的设置值如何,都会被视为选择了“不锁定”设置。

VBA示例

下面的示例将“雇员”窗体的 RecordLocks属性设为“已编辑的记录”(只要有用户编辑某页记录中的字段,该页记录就被锁定,并保持锁定状态,直至用户移到其他记录上)。


Forms("Employees").RecordLocks = 2

上页:Access VBA教程:ReadyState属性 (Snapshot Viewer) 下页:Access VBA教程:RecordSelectors属性

Access VBA教程:RecordLocks属性

Access VBA教程:RecordSelectors属性 Access VBA教程:Recordset属性
Access VBA教程:RecordsetClone属性 Access VBA教程:RecordsetType属性
Access VBA教程:RecordSource属性 Access VBA教程:RecordSourceQualifier属性
Access VBA教程:References属性 Access VBA教程:RemovePersonalInformation属性
Access VBA教程:RepeatSection属性 Access VBA教程:ReplicationConflictFunction属性
Access VBA教程:Report属性 Access VBA教程:Reports属性
Access VBA教程:Required属性 Access VBA教程:ResyncCommand属性
Access VBA教程:ReturnsRecords属性 Access VBA教程:RightMargin属性
Access VBA教程:RollbackTransaction属性 Access VBA教程:RowHeight属性
Access VBA教程:RowSource属性 Access VBA教程:RowSourceType属性
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号