Laravel 5.1:启用SQLite外键约束 [英] Laravel 5.1: Enable SQLite foreign key constraints
问题描述
在SQLite中,外键约束默认为禁用。
配置Laravel 5.1的SQLite数据库连接以启用外键约束的最佳方法是什么?我没有看到这样做
['connections'] ['sqlite']
in
/config/database.php
。
这里有一个解决方案。在
boot()
方法
App \Providers\AppServiceProvider
,添加:
if (DB :: connection()instanceof \Illuminate\Database\SQLiteConnection){
DB :: statement(DB :: raw('PRAGMA foreign_keys = 1'));
$ b 感谢@RobertTrzebinski < info / allow-sqlite-to-use-foreign-keys-in-laravel-4 />这个博客文章关于Laravel 4。
In SQLite, foreign key constraints are disabled by default.
What's the best way to configure Laravel 5.1's SQLite database connection to enable foreign key constraints? I don't see a way of doing this in
['connections']['sqlite']
in
/config/database.php
.
解决方案 Here's one solution. In the
boot()
method of
App\Providers\AppServiceProvider
, add:
if (DB::connection() instanceof \Illuminate\Database\SQLiteConnection) {
DB::statement(DB::raw('PRAGMA foreign_keys=1'));
}
Thanks to @RobertTrzebinski for this blog post regarding Laravel 4.
这篇关于Laravel 5.1:启用SQLite外键约束的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!