作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在 C#.Net 中创建一个自我项目,通过使用 3 层应用程序,我不想让我的 sql 语句具有事务性,这些语句用于多个存储过程,我一直在使用 WITH(NOLOCK)方法来查询在事务期间用于插入或更新的那些表,在 C# 方面我一直在使用 TransactionScope,但我最近读到不推荐使用 WITH(NOLOCK),因为它会导致幻像读取或使用脏的和不一致的数据。我的问题是,为了使用在事务期间插入或更新的数据,当涉及到选择时,事务操作方面的最佳方法是什么?无论是数据库端还是业务代码端。
最佳答案
您是否考虑过快照隔离?它提供了完美的读取一致性,并且根本不会锁定数据。
SI 是许多 RDBMS 上的标准,默认情况下。不知道为什么 SQL Server 人对使用它如此犹豫。缺点是轻微的,但你需要研究它们。
关于.net - WITH(NOLOCK) 的最佳替代品?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32950619/
我是一名优秀的程序员,十分优秀!