运行操作查询后无法保存MS Access 2019对象,如何解决?
问题:Access 2019使用BeginTrans/CommitTrans后无法保存设计对象
在MS Access 2019数据库模块中执行以下VB代码后,无法保存任何数据库文档对象(模块、表单或报表):
BeginTrans DBEngine(0)(0).Execute "delete from table1 where field1=""value1""" CommitTrans
保存时会弹出以下两种提示之一:
- Microsoft Access无法保存设计更改或新建数据库对象,因为文件已被其他用户打开。需获得独占访问权限才能保存。
- 当前无独占访问权限,继续更改可能无法保存。
已尝试的无效解决方法
- 使用
CurrentDb()替代DBEngine(0)(0) - 刷新Workspaces、Databases、TableDefs集合
仅DoCmd.RunSQL可正常运行,但这并非执行查询的首选方式。此前在Access 2003及更早版本中无此问题。
已解决方案
将数据库拆分为前端/后端后问题消失(疑似为Access 2019的bug)。
内容的提问来源于stack exchange,提问作者VladGGG
相关产品推荐
相关产品推荐

