为什么我应该或不应该使用Dirty reading:
set transaction isolation level read uncommitted
在SQL Server中?
从MSDN:
设置此选项后,可以读取未提交的数据或脏数据。在事务结束之前,可以更改数据中的值,并且行可以在数据集中显示或消失。
简而言之,当您使用这种隔离级别,并且作为一个事务的一部分在活动表上执行多个查询时,不能保证在事务的不同部分中返回给您的信息将保持不变。您可以在一个事务中两次查询相同的数据并获得不同的结果(这种情况可能发生在另一个用户在事务中更新相同数据的情况下)。显然,这会对依赖数据完整性的应用程序部分产生严重影响。