我是做webg开发的,以前用access.
我想问一下,在MS SQL 中怎么在网站用户修改一条记录时,锁定这条记录,别人不让改。我还有个疑问,就是锁定后,其它网站用户发出的请求,MSSQL服务器是直接拒绝,还是等待“锁打开”后处理其它请求

解决方案 »

  1.   

    --用事務
    declare @err int 
    set @err=0
    begin tran
     --update 操作
    set @err=@err+abs(@@error)
    --update 操作
    set @err=@err+abs(@@error)
    if @err=0
       commit
    else
       rollback
     
      

  2.   

    wufeng4552大哥,不能通过游标之类的东西,锁定吗?我是在 WEB 端!
      

  3.   

    简单的修改,如单条的update语句,系统会自动锁,其它请求排队等待。
    复杂的修改,用事务包起来执行,出错回滚。也可主动使用锁(一般没必要).如果你诚心想让自己的系统跑得慢,可以考虑用游标来锁。
      

  4.   

    可我要在asp中页面中处理逻辑,到是也可以用事务,不过,我可以将所有事务转到sql server 中执行吗?