首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在长逻辑流中维护数据库并发性

如何在长逻辑流中维护数据库并发性
EN

Stack Overflow用户
提问于 2019-09-22 23:41:17
回答 1查看 30关注 0票数 2

我们首先使用实体框架代码将报表保存到SQL数据库中,许多对象具有多对多的关系,因此数据被分成不同的表。为了防止数据重复,我们首先检查某个对象是否已经保存,然后将关系添加到数据库中。

例如,具有可以具有多个国家的对象Person,以及可以持有多人对象的对象Country。

在储存流开始时,我们查询数据库中的现有国家,并在Person对象中更新它们(如果它们存在),或者创建它们(如果它们不存在)。

当我们同时只有一个保存过程时,这个流程工作得很好,但是现在我们需要同时支持它很多次,我担心的是一个线程会在其他线程检查现有国家之后立即添加一个新的国家。

我想知道有什么好的实践可以解决这个问题,并将对性能的影响降到最低。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2019-09-23 00:11:02

听起来你并没有充分利用你所选择的ORM的功能。如果您使用的是库according to it's documentation,则在返回的实体中表示关系。因此,只要EntityID保持不变,更新单个实体的多对多关系就会更新所有其他相关实体。

如果您仍然无法信任这种关系的完整性,我建议您使用实体框架的bulk-update feature

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

https://stackoverflow.com/questions/58050792

复制
相关文章

相似问题

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