如何在 Laravel 5.5 中设置事务隔离级别?
How do I set transaction isolation level in Laravel 5.5?
在 laravel 5.5 和 MySQL 中,我使用 \Illuminate\Support\Facades\DB
以这种方式创建交易:
DB::transaction(function() {
...
});
此类事务的隔离级别是多少,是否有明确设置的方法?
SqlLite 中的默认值是
'BEGIN IMMEDIATE TRANSACTION';
MySQL中的默认值为
'SET TRANSACTION ISOLATION LEVEL READ COMMITTED';
你可以通过这样的方式自己设置
$pdo = DB::connection()->getPdo();
$pdo->exec('SET TRANSACTION ISOLATION LEVEL READ COMMITTED');
在 laravel 5.5 和 MySQL 中,我使用 \Illuminate\Support\Facades\DB
以这种方式创建交易:
DB::transaction(function() {
...
});
此类事务的隔离级别是多少,是否有明确设置的方法?
SqlLite 中的默认值是
'BEGIN IMMEDIATE TRANSACTION';
MySQL中的默认值为
'SET TRANSACTION ISOLATION LEVEL READ COMMITTED';
你可以通过这样的方式自己设置
$pdo = DB::connection()->getPdo();
$pdo->exec('SET TRANSACTION ISOLATION LEVEL READ COMMITTED');