查询一,事务语句
begin try
begin transaction --开启事务
update userinfo set name='zs' where id=1--会成功
update userinfo set gender='zs' where id=1--会失败,gender是bit类型
commit transaction--提交事务
end try
begin catch--错误处理
rollback transaction--回滚事务
end catch
当在第二个会失败的update语句前加上断点时候,执行到该句时,新建一个查询语句2
select * from userinfo with(nolock)
当带有with(nolock)时候,表示忽略锁,此时可以看到第一个update执行成功,但是当不带有with(nolock)时候,会一直显示正在查询,没有返回,因为此时事务正在进行,加了锁,查询2无法访问,此时继续执行事务,当事务执行完时,语句2立即返回