mssql sqlserver select查询会锁表,会使update delete超时


摘要:
下文讲述sqlserver大查询时,无法使用update delete操作的处理方法,如下所示:
实验环境:sql server 2008 R2



我们深知当对数据表执行select操作时,会产生share锁,当数据被共享锁时,其它事务只可对数据读取,无法对数据进行修改操作,
此时对高频更新的数据,则会产生相当大的影响。

当我们对数据的实时性要求不是很高时,我们可以显式的指定select查询时,不对表进行锁定,此举可以避免selectda大查询时,影响其它update delete操作,具体方法如下:

   ---在表后面加上nolock关键字,可使用无锁的方式查询数据库
   select * from tableName with(nolock)
   ---或
   select * from  tableName (nolock)