首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果数据库连接丢失,是否提交SaveChange事务?

如果数据库连接丢失,是否提交SaveChange事务?
EN

Stack Overflow用户
提问于 2019-06-07 17:09:20
回答 1查看 46关注 0票数 0

我们已经实现了一个WordAddin,并使用EF6连接到oracle数据库。使用该插件,用户可以从数据库中加载文档。编辑完文档后,用户关闭文档。我们使用DocumentBeforeClose-Event更新数据库中的文档。只有一个用户可以在数据库中编辑和保存文档。问题是,有时oracle行锁争用是存在的。据我所知,行锁意味着一个事务正在更新行,而另一个事务正在等待。有没有可能,如果SaveChanges期间的数据库连接丢失,事务就不会被提交?或者如果word在SaveChange期间意外关闭?

在word中关闭文档后,word会根据代码关闭,这会是问题所在吗?

EN

回答 1

Stack Overflow用户

发布于 2019-06-08 03:14:54

当保存时连接丢失时,事务不太可能被提交。

EF在执行SaveChanges时启动一个事务,并在所有数据库交互的最后提交该事务。只有在保存数据后立即启动另一个数据库交互,才会在保存成功时注意到丢失的连接。

您需要的是一个retry policy,以确保宝贵的修改不会丢失。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56491309

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档