使用表级别锁,例如:
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
GO
BEGIN TRANSACTION
SELECT * FROM TableName WITH (NOLOCK)

解决方案 »

  1.   

    你们说的是脏读取了,应该就是SELECT * FROM TableName TABLOCKX 就可以了,给分吧。
      

  2.   

    TABLOCKX 使用表的排它锁。该锁可以防止其它事务读取或更新表,并在语句或事务结束前一直持有。
      

  3.   

    T-SQL 的 T 的意思本来就是一个人结束操作之后才能另一个人才能使用。
      

  4.   

    SQL server任何时候都以事务保护的方式让多用户共享数据,这与那些任何时候都默认允许脏读数据的小型烂数据库系统完全不同。