Laravel: Использование try… catch с DB ::action ()

Мы все используемDB::transaction() для нескольких запросов вставки. При этом, еслиtry...catch быть помещенным в это или обернуть это? Нужно ли включатьtry...catch когда транзакция автоматически провалится, если что-то пойдет не так?

Образецtry...catch завершение транзакции:

// try...catch
try {
    // Transaction
    $exception = DB::transaction(function() {

        // Do your SQL here

    });

    if(is_null($exception)) {
        return true;
    } else {
        throw new Exception;
    }

}
catch(Exception $e) {
    return false;
}

НаоборотDB::transaction() завернуть попробовать ... поймать:

// Transaction
$exception = DB::transaction(function() {
    // try...catch
    try {

        // Do your SQL here

    }
    catch(Exception $e) {
        return $e;
    }

});

return is_null($exception) ? true : false;

Или просто сделка без попытки ... поймать

// Transaction only
$exception = DB::transaction(function() {

    // Do your SQL here

});

return is_null($exception) ? true : false;