美文网首页
laravel事务笔记

laravel事务笔记

作者: 雨黎_95c0 | 来源:发表于2017-11-12 16:15 被阅读0次

    事务是把一系列数据库操作当作一个逻辑单元执行,也就是说,事务中的一系列 SQL 语句要么都执行成功,要么都失败,事务的原子性能保证数据的一致性、安全性和持久性。

    PDO 扩展中使用事务很容易,只需把想要执行的 SQL 语句放在 PDO 实例的beginTransaction()方法和commit()方法之间即可。

    在 Laravel 框架中对事务操作进行了封装,我们可以这样调用:

    DB::transaction(function () {

    DB::table('users')->update(['votes' => 1]);

    DB::table('posts')->delete();

    }, 5);

    相应的底层位于ManagesTransactionstrait 中:

    还可以这样调用:

    DB::beginTransaction();

    try {

    DB::table('users')->update(['votes' => 1]);

    DB::table('posts')->delete();

    DB::commit();

    } catch (PDOException $ex) {

    var_dump($ex);

    DB::rollback();

    }

    相应的底层实现同样位于ManagesTransactions,可自行查看。

    原文:http://laravelacademy.org/post/7448.html

    相关文章

      网友评论

          本文标题:laravel事务笔记

          本文链接:https://www.haomeiwen.com/subject/ehsnmxtx.html