开启了事务,在sql出错的时候不执行commit,也没执行rollback的话,会出现什么情况?
发布网友
发布时间:2022-04-13 13:41
我来回答
共3个回答
热心网友
时间:2022-04-13 15:10
有可能出现死锁。
因为在对表做更新操作的时候,就会在表上加锁,事务没提交,锁是不会释放的,这是数据库为了保证数据完整性的操作。那么在某个程序写数据库表的时候,其他任何程序对该表是无法进行读取和写入的,处于等待状态。
如果出现了循环等待,A等B,B等C,C等A那么就出现了死锁。
热心网友
时间:2022-04-13 16:28
程序运行过程中处于锁的状态,直到程序结束后,释放事务,数据不会被更新
热心网友
时间:2022-04-13 18:03
什么意思?
只有当@@Error<0时才commit,既然没有错误就提交了,也就不会再回滚了。
if(@@Error<0)
Commit;
else
RollBack;
参考资料:百度一下