读书人

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

发布时间: 2012-02-04 15:43:09 作者: rapoo

关于多用户同时执行同一个存储过程的事务问题
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

读书人网 >SQL Server

热点推荐