mysql事务嵌套

写代码的时候, 应该是很容易碰到事务相互嵌套的问题, 那么mysql是如何处理事务嵌套的呢, 答案是: MySQL不支持事务嵌套, 当我们在事务中嵌套另一个事务的时候, 声明语句start transaction;会导致当前的事务默认提交, 当我们执行rollback; 的时候也是不好使的, 因为上次的事务已经被提交了。

那当我们代码中出现了事务嵌套的时候怎么办呢, 一般的框架,已经在框架里进行处理了, 基本原理就是只执行最外围的事务。已经有篇文章写的很不错了,戳这里查看

不单单是开启另一个事务会导致当前事务的隐式提交, 当发生alter table, 等之类的操作, 也会导致当前事务的隐式提交, 所以事务的使用还是要当心点。具体看这里implicit-commit