你目前正处于脱机状态,正在等待 Internet 重新连接

PRB:在大型事务处理期间出现“File sharing lock count exceeded…”(超过文件共享锁计数…)错误

针对 Office 2003 的支持已终止

Microsoft 已于 2014 年 4 月 8 日终止了针对 Office 2003 的支持。该更改已影响到您的软件更新和安全选项。 了解这一措施对于您的含义以及如何继续保持受保护状态。

重要说明:本文包含有关修改注册表的信息。修改注册表之前,一定要备份注册表,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和编辑注册表的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986 Microsoft Windows 注册表说明
症状
当一个或多个用户在多用户环境中处理许多事务时,事务可能失败并出现以下错误消息:
File sharing lock count exceeded.Increase MaxLocksPerFile registry entry.
原因
如果执行一个事务所需的锁数超过每个文件的最大锁数,就会出现此错误。
替代方法
警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证可以解决因注册表使用不当所导致的问题。使用注册表编辑器需要您自担风险。 要解决此问题,请增加每个文件的最大锁数。为此,请使用下列方法之一:

方法 1:设置 MaxLocksPerFile 的注册表项以增加每个文件的最大锁数

  1. 单击“开始”,然后单击“运行”。
  2. 键入 regedit,然后单击“确定”。
  3. 在注册表编辑器中,找到以下注册表项:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 4.0
  4. 在注册表编辑器的右窗格中,双击“MaxLocksPerFile”。
  5. 在“编辑 DWORD 值”对话框中,单击“十进制”。
  6. 根据需要修改“数值数据”框中的值,然后单击“确定”。
注意:该方法可为所有使用 Microsoft Jet 数据库引擎 4.0 版的应用程序更改 Windows 注册表设置。

方法 2:使用 SetOption 方法临时更改 MaxLocksPerFile

注意:本文中的代码示例使用 Microsoft 数据访问对象。为使该代码正常运行,您必须引用 Microsoft DAO 3.6 对象库。为此,请在 Visual Basic 编辑器中单击“工具”菜单上的“引用”,并确保选中“Microsoft DAO 3.6 对象库”复选框。 SetOption 方法临时覆盖每个文件的默认锁数。在设置 MaxLocksPerFile 注册表项时设置每个文件的默认锁数。通过使用 SetOption 方法来设置新值。在关闭 DBEngine 对象之前该新值将一直有效。要使用第二种方法,请按照下列步骤操作:
  1. 打开 Microsoft Access。
  2. 打开一个数据库。在左窗格中,单击“模块”。
  3. 在右窗格中,右键单击“<模块名>”,然后单击“设计视图”。

    注意:如果没有现有模块,请创建一个新模块。
  4. 在 “Microsoft Visual Basic -<数据库名>-[<模块名>(代码)]”窗口中,单击“视图”菜单中的“立即窗口”。
  5. 在“立即窗口”中,输入以下代码:
    DAO.DBEngine.SetOption dbmaxlocksperfile				,15000
  6. 按 Enter 键运行此行代码。

    注意:这会将 MaxLocksPerFile 值临时设置为 15,000。
要处理大型事务,请根据需要设置 MaxLocksPerFile 值,然后在会话中运行事务。

使用 SetOption 方法对 MaxLocksPerFile 设置所做的更改仅适用于当前会话。
更多信息
MaxLocksPerFile 设置决定 Microsoft Jet 加在每个文件上的最大锁数。MaxLocksPerFile 的默认值为 9,500。但是,如果您正在 Novell NetWare 服务器上工作,请不要更改该值,因为每个连接的最大服务器记录锁数是 10,000。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
305995PRB:Error "3050 Could Not Lock File" When You Connect to a Jet Database on a Novell Server
参考
有关自定义 Jet 数据库引擎的注册表设置的更多信息,请单击“帮助”菜单上的“Microsoft Access 帮助”,在“Office 助手”或“应答向导”中键入自定义 Microsoft Jet 的 Windows 注册表设置,然后单击“搜索”以查看相关主题。 对于 Access 2000,查看搜索结果自定义 Microsoft Jet 的 Windows 注册表设置。对于 Access 2002,查看关于使用用户配置文件和运行时选项自定义应用程序环境

有关 SetOption 方法的更多信息,请在 Visual Basic 编辑器中,单击“帮助”菜单上的“Microsoft Visual Basic 帮助”,在“Office 助手”或“应答向导”中键入 SetOption 方法,然后单击“搜索”以查看相关主题。 有关其他信息,请参见以下 Microsoft 知识库文章:
198633 ACC2000:"File Sharing Lock Count" Error During Synchronization
209940 ACC2000:Error Message:There Is Not Enough Disk Space or Memory
ACC2003
属性

文章 ID:815281 - 上次审阅时间:12/23/2003 18:26:18 - 修订版本: 4.1

Microsoft Office Access 2003, Microsoft Access 2002 标准版, Microsoft Access 2000 标准版

  • kberrmsg kbregistry kbprb KB815281
反馈