Laravel之路(事務)mysql事務

其實關於mysql的事務(原聲mysql語句),我在個人博客裏面有提到(mysql的文章分類下)html

 

今天看下基於laravel框架ORM的處理mysql

準備:laravel

  表必須是InnoDB引擎sql

DB::beginTransaction(); try{ $name = 'abc'; $result1 = Test::create(['name'=>$name]); if (!$result1) { /** * Exception類接收的參數 * $message = "", $code = 0, Exception $previous = null */
        throw new \Exception("1"); } $result2 = Test::create(['name'=>$name]); if (!$result2) { throw new \Exception("2"); } DB::commit(); } catch (\Exception $e){ DB::rollback();//事務回滾
    echo $e->getMessage(); echo $e->getCode(); }

注意:若是id是自增的話,mysql的primary key是在內存中維護的,事務回滾是不會回退id,因此中間會出現斷層框架

 

 

 

轉:https://www.cnblogs.com/xj76149095/p/6222066.htmlspa

相關文章
相關標籤/搜索