Laravel5的數據庫表建立問題 數據庫遷移操作報錯問題解決

原文鏈接:http://write.blog.csdn.net/postedit/78319910

轉載請注作者: 海馬
原文地址:http://write.blog.csdn.net/postedit/78319910
執行遷移文件: php artisan migrate ; 數據庫中就會看到我們新添加的字段;

報錯

[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table `users` add unique `users_email_unique`(`email`))
[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

這是由於Laravel 默認使用 utf8mb4 字符, 包括支持在數據庫存儲「 表情」 。 如果你正在運行的 MySQL release 版本低於5.7.7 或 MariaDB release
版本低於10.2.2 , 爲了MySQL爲它們創建索引, 你可能需要手動配置遷移生成的默認字符串長度, 你可以通過調用 AppServiceProvider 中的
Schema::defaultStringLength 方法來配置它:\

解決辦法,在紅框處加下下面的代碼

再次執行遷移文件: php artisan migrate ; 數據庫中就會看到我們新添加的字段;

報錯
[Symfony\Component\Debug\Exception\FatalThrowableError]
Class 'App\Providers\Schema' not found

解決辦法:

在紅框處加入代碼

再次執行遷移文件: php artisan migrate ; 就可以成功創建表了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章