Laravel和InnoDB

Dig*_*lWM 20 php mysql innodb laravel

我正在使用laravel和laravel迁移机制.我创建了表并设置了外键.但表是MyISSAM,因此不会创建外键.我在哪里启用/配置它?(将其更改为InnoDB而不是mysql服务器).

Tho*_*ENT 66

您可以编辑/config/database.php文件,搜索mysql条目并进行更改:

'engine' => null,

'engine' => 'InnoDB',

这样可以避免$table->engine = "InnoDB";为每个模式添加内容;)

  • @VincentDecaux,Laravel 为所有开发人员提供了通过迁移代码创建外键的功能。假设如果 Laravel 不允许此功能,而使用 InnoDB 引擎的某人需要它,那么显然他必须单独编写查询来添加外键约束。结果,他/她的工作量和时间也会增加一倍。 (2认同)

srs*_*jid 10

像这样定义引擎

  Schema::create("models", function(Blueprint $table) {
            $table->engine = "InnoDB";
  }
Run Code Online (Sandbox Code Playgroud)


cry*_*one 7

您可以在Schema\Table闭包内设置引擎.