使用事务处理的话,需要数据库引擎支持事务处理。比如 MySQL 的 MyISAM 不支持事务处理,需要使用 InnoDB 引擎。

使用 transaction 方法操作数据库事务,当发生异常会自动回滚,例如:

自动控制事务处理

Db::transaction(function(){    Db::table('think_user')->find(1);    Db::table('think_user')->delete(1);
});

也可以手动控制事务,例如:

// 启动事务Db::startTrans();try{
    Db::table('think_user')->find(1);
    Db::table('think_user')->delete(1);    // 提交事务
    Db::commit();    
} catch (\Exception $e) {    // 回滚事务
    Db::rollback();
}

注意在事务操作的时候,确保你的数据库连接是相同的。


 小秋同学  数据库  2021-03-25 07:05:56    收藏:  赞(816)
源码网-一个不错的学习网站
本文地址:https://www.yuanma.cc/article/shujuku/1628.html 复制链接 如果还有疑问,欢迎加入我们的QQ交流群:887790 加入Q群 易优最新程序下载: 点击下载
QQ在线咨询