我是Laravel的新手,尝试使用Laravel MediablePackage,但它给了我一个迁移错误-
[PDOException]SQLSTATE[42000]:语法错误或访问冲突:1071指定的密钥太长;最大密钥长度为1000字节“
我在Laravel 5.4.36,其他网站上的解决方案是添加这个-
public function boot()
{
//
Schema::defaultStringLength(191);
}
但我的项目中已经有了这个。
有人能帮忙吗?
在config/database.php中,我替换了这个“引擎”=
此解决方案而不是设置字符串长度的限制。
您可以尝试通过在config/database.php
config文件中存储engine
值来修复此问题:
'engine' => 'InnoDB ROW_FORMAT=DYNAMIC',
如果要使用此修复程序:
Schema::defaultStringLength(191);
请确保您已经在config/app.php
中注册了此服务提供程序
问题内容: Laravel 5.4上的迁移错误 [Illuminate \ Database \ QueryException] SQLSTATE [42000]:语法错误或访问冲突:1071指定的密钥太长;默认值为0。最大密钥长度为767字节(SQL:更改表添加唯一()) [PDOException] SQLSTATE [42000]:语法错误或访问冲突:1071指定的密钥太长;默认值为0。最大
SQLSTATE[42000]:语法错误或访问冲突:1071指定的密钥太长;最大密钥长度为767字节(SQL:更改tabl e用户添加唯一users_email_unique(电子邮件)) SQLSTATE[42000]:语法错误或访问冲突:1071指定的密钥太长;最大密钥长度为767字节 怎么了?我正在使用laravel 5.3
在cmd中提交“php artisan migrate:fresh”后出现错误。 SQLSTATE[42000]:语法错误或访问冲突:1071指定的密钥太长;最大密钥长度为767字节(SQL:alter tableaddunique()
问题内容: 我知道有关此标题的问题已经回答过,但是请继续阅读。发布前,我已彻底阅读了关于此错误的所有其他问题/答案。 我收到以下查询的上述错误: 有谁知道为什么以及如何解决它?问题是-相同的查询在我的本地计算机上运行完美,在我以前的主机上也运行良好。顺便说一句,它来自一个成熟的项目- phpdevshell-所以我猜这些家伙知道他们在做什么,尽管你永远都不知道。 任何线索表示赞赏。 我正在使用ph
问题内容: 当我执行以下命令时: 我收到此错误消息: 有关column1和column2的信息: 我认为只需要21个字节,而只需要501个字节。因此,总字节数是522,少于767。那么为什么收到错误消息? 问题答案: 在MySQL版本5.6(及更早版本)中,InnoDB表的前缀限制为767个字节。MyISAM表的长度为1,000字节。在MySQL 5.7及更高版本中,此限制已增加到3072字节。
问题内容: 我无法在上创建索引。 MySQL: 问题答案: