我们是否可以将MS Access事务与acCmdSaveRecord一起使用?



我知道我们可以通过DAO命名空间在Access中使用SQL事务,但是我们是否可以对acCmdSaveRecord做同样的事情,因为它没有明确链接到DAO? 或者acCmdSaveRecord是否有隐式事务?如果您不能将acCmdSaveRecord放入事务中,还有什么替代方案?显式 SQL?

忘了补充一点,我是 VBA 新手,所以我目前不知道哪些是最佳实践。另外,由于我无法发表评论,我正在接管现有的Access VBA应用程序,因此我不知道使用acCmdSaveRecord背后的基本原理。

不,不是一般规则。因此,事务的使用是用于 VBA 代码,以及您拥有的 sql 或记录集代码。不幸的是,交易不适用于表单。

但是,您可以解决方法: 开始事务。 创建记录集。 将表单记录源推送(分配(到上面创建的记录集。

现在,用户可以自由编辑、更改、添加、删除该表单,但是如果您在以上所有内容完成后不提交记录集,则编辑等将被忽略。设置它可能会有点痛苦,对于子表单,我从来没有真正制定出一种运行良好的无缝编码方法。

因此,如果您愿意在代码中创建一个记录集,然后将该记录集分配给表单数据,则结果现在是一个绑定到您在代码中启动的事务的表单。

最新更新