Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

运行时错误3052文件共享锁定数溢出

时 间:2026-07-10 11:51:03
作 者:张志   ID:8  城市:上海  QQ:3059255点击这里给张志发消息
摘 要:运行时错误3052文件共享锁定数溢出。请增加 MaxLocksPerFile注册表项值。这个错误的解决方案。
正 文:

一、问题描述:

     使用DAO代码更新表中数据时,rst.Edit 代码行出错,而前几次运行代码都没有问题,提示如下图:

    


二、解决方案:

     错误 3052 是因为 VBA 在循环更新大量记录时,一次性请求的锁超过了 Access 默认的 9500 个限制。在代码开头用 DBEngine.SetOption 临时提高限制,无需修改注册表,且只对本次 VBA 运行有效,更安全。代码如下:

' 在代码最前面增加这一行,将锁限制临时提高到 200,000 
    DBEngine.SetOption dbMaxLocksPerFile, 200000

    经运行后,解决了这个问题。



Access软件网QQ交流群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助