需要带提交或回滚事务的语句.commit transaction  --> 提交事务rollback transaction  --> 回滚事务

解决方案 »

  1.   

    显式开始了事务之后需要显式关闭,不然事务一直处于开启状态,select只是没有加太多锁而已,事务还是开启的
      

  2.   

    在sql server 默认每条语句就是一个事务,但如果你用了begin transaction,后面是一个查询,那么就必须要commit tran,也就是:begin tran查询commit tran
    否则,这个会话的打开的事务数是1:begin tran select 1--表示有1个事务处于打开状态,还没有关闭
    select @@TRANCOUNT
    /*
    1
    */所以,必须要commit tran或者rollback tran