跳到主要內容區塊
:::
首頁 文章分享列表 文章分享

Laravel DB::beginTransaction() 不同資料庫rollBack失敗

當我們在做資料庫的交易動作時會使用

DB::beginTransaction();

在遇到錯誤時使用rollback將先前對資料庫的操作全部還原

DB::rollback();

但是當遇到Model為以下狀況

class Student extends Model
{
    protected $connection = 'school';
    protected $table = 'student';
    protected $fillable = array('id', 'name');
}

使用$connection指定連線資料庫時

若單純rollback會發生失敗的情況

此時必須加上資料庫連線的名稱即可

DB::connection('school')->transaction();

DB::connection('school')->rollback();

 

這篇文章是否對您有幫助?