同时显示Jet / OLE DB参数well documented我无法理解这两个连接参数之间的区别:
第一个:
Jet OLEDB:事务提交模式 (DBPROP_JETOLEDB_TXNCOMMITMODE)
指示Jet是否将数据写入 磁盘同步或异步 提交交易时。
第二个:
Jet OLEDB:用户提交同步 (DBPROP_JETOLEDB_USERCOMMITSYNC)
指示是否进行了更改 在交易中写的是 同步或异步模式。
有什么区别?何时使用哪个?
答案 0 :(得分:6)
答案 1 :(得分:1)
您认为USERCOMMITSYNC=YES
是同步提交的选项。这就是造成混乱的原因。
我花了很长时间来搜索这个主题,因为我发现我使用旧的vb6
应用程序获得的行为与.net oledb/jet4
现在我真的应该通过我读到的实际页面的链接备份我要说的内容,但我现在找不到这些页面。
无论如何,我正在浏览MSDN网站并找到一个描述Jet3
中“设计”错误的页面,该错误转换了USERCOMMITSYNC
的功能,意味着 NO 的值得到同步提交。
因此,MS将默认值设置为 NO ,默认情况下我们会进行同步提交。正如上面David Fenton所描述的那样。我们都接受了这种行为。
但是,该文件继续解释oledb/Jet4
中的行为已被更改。基本上MS修复了他们的错误,现在USERCOMMITSYNC=YES
的设置完成它所说的。
但是他们改变了默认值吗?我想不是因为现在我的显式事务是 NOT 使用oledb/jet4
在.Net应用程序中同步提交。