有时,当大多数情况下(或仅)使用表进行读取时,索引已不再有用,而且每一个计数都很重要,人们可能会使用没有LOCK的选择来提高性能。
SQL服务器
SELECT * FROM TableName WITH (nolock)
的MySQL
SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; SELECT * FROM TableName; SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
甲骨文
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; SELECT * FROM TableName;
DB2
SELECT * FROM TableName WITH UR;
其中UR代表“未提交的阅读”。
如果在进行了记录修改的表上使用,可能会导致不可预测的结果。