首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于多用户同时执行同一个存储过程的事务有关问题

2012-02-04 
关于多用户同时执行同一个存储过程的事务问题sqlserver2000数据库,有一个存储过程有下面语句:BEGINTRANaaa

关于多用户同时执行同一个存储过程的事务问题
sqlserver2000数据库,有一个存储过程有下面语句:
    BEGIN   TRAN   aaa
        insert   t_wh_billofdocument([bs_customer_id],[bs_personnel_id])
        values     (@bs_customer_id,@bs_personnel_id   )

        set   @iError   =   @@error
        if   @iError=0
              commite   tran   aaa
        else
              rollback   tran   aaa


假如有多个用户同时执行这个存储过程的语句时,特别是执行insert   语句时,这个事务的作用会不会先执行完某一个用户提交的事务(包括insert   语句)后,再执行另外一个用户提交的事务?

[解决办法]
对的
[解决办法]
事务的执行是会执行完一个再执行下一个的,每个事务是单独的进程,不会出现并发。

所以,你说的是对的。
[解决办法]
嗯。发生事务时是会先加锁所执行的语句,执行完后再解除加锁,接着执行其它的statement

热点排行