猿问

Mysql 事务嵌套问题

比如我控制器里面有事务,然后在事务里面调用Model的另一个事务

use Model;
Db::startTrans();
try{
    Db::name('table1')->update(1);
    Db::name('table2')->update(2);
    //另一个事务
    Model::update(2);
    Db::commit();
    }catch(){

    Db::rollback();
}
这样执行有什么错误吗?还是说执行完一个事务之后在执行另一个??

看了这个问题,不是很理解
https://segmentfault.com/q/10...

三国纷争
浏览 424回答 2
2回答

哈士奇WWW

不建议使用嵌套事务,不管在哪一层回滚则全部回滚,即使你内层已经提交了,还是会回滚的,这根本不是嵌套关系。还有一个事务就能解决的你所说的嵌套事务,干嘛还用嵌套
随时随地看视频慕课网APP
我要回答