在执行SELECT操作的同时,存在大量的INSERT操作,造成SELECT速度缓慢,该如何处理?谢谢!

解决方案 »

  1.   

    是要在insert的同时select吗?可以使用 select *  from *  with(nolock)
      

  2.   

    最好是带条件查询,比如 where ....或是在插入的时候锁住表不让查询.
      

  3.   

    有没有办法兼顾两者?因为在SELECT的同时也要满足INSERT的需要。或者怎样让锁表的时间更短
      

  4.   

    一个操作完了,自然就解锁了,你去设定锁表的时间也没用。
    可以牺牲空间来换取时间,就是建一个副表,select副表,insert主表,然后定时将主表内容同步到副表。
      

  5.   

    with nolock 就可以了,不过确实可能读到脏数据或幻像。
    隔离级别越高,总会使并发能力下降2005下,可以设置另一个事务级别SNAPSHOT , 从数据库快照中读取数据,这一点上做的类似oracle.
      

  6.   

    我一般都是SELECT出来200至500条记录,同时在INSERT的记录一秒钟在5条左右。