SELECT * FROM youtable WITH (XLOCK)

解决方案 »

  1.   

    是不是加了where条件之后,就会锁住满足where条件的记录?
      

  2.   

    现在的问题是多个操作员进行操作时,当一条记录给某个操作员选中时,其他操作员就不能选中此记录,对于select * from table with (xlock) 加了where条件之后就报错了哦
      

  3.   

    本来是可以在应用上解决的,选中之后马上将此交易的status更改,不过这样的话,对于每个调用的非正常出口都要将status改回,而且对于非正常退出的情况将会留有非正常status的交易,比较麻烦
      

  4.   

    '这样,要加上事务才行哦
    cn.BeginTrans
       Set rs = cn.Execute("select  * from  Student with (TABLOCKX) where id_class=2  ") 
       Set Vs.DataSource = rs
    cn.CommitTrans
      

  5.   

    tablockx是锁整个表的哦,用rowlock的话都不是互斥的,我现在想开始一个事务,然后锁住其中的一条,事务结束后释放,就像oracle的select * from table where s#='xxx' for update