使用 Read Uncommitted 选项

使用 Read Uncommitted 选项来从数据库服复制行,不管它们之上是否有锁。获取行的程序不放置锁且不予考虑。Read Uncommitted 是没有事务的数据库唯一可用的隔离级别。

此隔离级别最适合于对其数据未在修改的静态表的查询,因为它不提供隔离。以 Read Uncommitted,程序可能返回在随后回滚了的事务之内插入或修改了的未提交的行。

SET TRANSACTION 的 Uncommitted Read 隔离级别不直接支持 SET ISOLATION 语句的 Committed Read 隔离级别的 LAST COMMITTED 特性。当应用尝试读取另一会话在修改数据时在其上持有排他锁的行时,LAST COMMITTED 特性可降低锁定冲突的风险。当启用此特性时,数据库服务器返回最近提交的数据的版本,而不是等待释放该锁。

然而,在下列环境之一中,此特性在使用 SET TRANSACTION 语句的 Uncommitted 隔离级别的所有用户会话中隐式地生效: 要获取关于 LAST COMMITTED 特性及其限制的信息,请参阅 Committed Read 的 LAST COMMITTED 选项 部分。