Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么使用MyISAM通过Laravel迁移创建的关系表不';不支持关系特性_Laravel_Relational Database_Innodb_Myisam - Fatal编程技术网

为什么使用MyISAM通过Laravel迁移创建的关系表不';不支持关系特性

为什么使用MyISAM通过Laravel迁移创建的关系表不';不支持关系特性,laravel,relational-database,innodb,myisam,Laravel,Relational Database,Innodb,Myisam,我注意到,Laravel通过存储引擎MyISAM创建表,MyISAM不支持关系特性 我已经通过迁移设置了外键,但是当我签入Phpmyadmin时,它没有显示任何关系特性,因为存储引擎是MyISAM 我已经读到,如果我改为InnoDB,可以应用这些关系 但我的问题是,如果我不能添加关系,那么为什么Laravel将该存储引擎作为MyISAM? 是否不需要将关系放入数据库??这会使我的数据库易受攻击 根据Laravel,最佳实践是什么 实际上,使数据库表成为MyISAM的不一定是Laravel。如果未

我注意到,Laravel通过存储引擎MyISAM创建表,MyISAM不支持关系特性

我已经通过迁移设置了外键,但是当我签入Phpmyadmin时,它没有显示任何关系特性,因为存储引擎是MyISAM

我已经读到,如果我改为InnoDB,可以应用这些关系

但我的问题是,如果我不能添加关系,那么为什么Laravel将该存储引擎作为MyISAM? 是否不需要将关系放入数据库??这会使我的数据库易受攻击


根据Laravel,最佳实践是什么

实际上,使数据库表成为MyISAM的不一定是Laravel。如果未指定,则将使用MySQL版本/安装的默认存储引擎创建表。在你的情况下,可能是MyISAM。 要确保使用InnoDB,请编辑config/database.php文件并设置
“引擎”=>“InnoDB”,MySQL的最佳实践是使用InnoDB,而不是MyISAM。时期句号。如果Laravel想使用MyISAM,不要使用Laravel。