Laravel 5.4因特殊字段太长导致migrations报错的解决


Posted in PHP onOctober 22, 2017

前言

本文主要介绍了关于Laravel 5.4因特殊字段太长导致migrations报错的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:

laravel 5.4 改变了默认的数据库字符集,现在utf8mb4包括存储emojis支持。MySQL 需要v5.7.7或者更高版本,当你试着在一些MariaDB或者一些老版本的的MySQL上运行 migrations 命令时,你会碰到下面这个错误:

[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 `use
 rs_email_unique`(`email`))
 
 [PDOException]
 SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

解决方法

经过查询,我们可以在 AppServiceProvider.php 文件里的 boot 方法里设置一个默认值:

<?php
namespace App\Providers;
 
use Illuminate\Support\ServiceProvider;
//添加的代码
use Illuminate\Support\Facades\Schema;
 
class AppServiceProvider extends ServiceProvider
{
 /**
  * Bootstrap any application services.
  *
  * @return void
  */
 public function boot()
 {
  //添加的代码
  Schema::defaultStringLength(191);
 }
 
 /**
  * Register any application services.
  *
  * @return void
  */
 public function register()
 {
  //
 }
}

总结

以上就是这篇文章的全部内容了,本文还有许多不足,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
PHPMYADMIN导入数据最大为2M的解决方法
Apr 23 PHP
php使用百度天气接口示例
Apr 22 PHP
CI框架中集成CKEditor编辑器的教程
Jun 09 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
Jul 06 PHP
教你php如何实现验证码
Jan 20 PHP
CI框架实现cookie登陆的方法详解
May 18 PHP
php使用glob函数遍历文件和目录详解
Sep 23 PHP
Yii2-GridView 中让关联字段带搜索和排序功能示例
Jan 21 PHP
PHP编程计算两个时间段是否有交集的实现方法(不算边界重叠)
May 30 PHP
php无限级分类实现评论及回复功能
Feb 18 PHP
thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例
Aug 13 PHP
php和nginx交互实例讲解
Sep 24 PHP
PHP高效获取远程图片尺寸和大小的实现方法
Oct 20 #PHP
PHP静态延迟绑定和普通静态效率的对比
Oct 20 #PHP
php+ajax实现仿百度查询下拉内容功能示例
Oct 20 #PHP
详解cookie验证的php应用的一种SSO解决办法
Oct 20 #PHP
thinkPHP5项目中实现QQ第三方登录功能
Oct 20 #PHP
PHP简单实现二维数组赋值与遍历功能示例
Oct 19 #PHP
phpStudy2016 配置多个域名期间遇到的问题小结
Oct 19 #PHP
You might like
用PHP实现文件上传二法
2006/10/09 PHP
几个实用的PHP内置函数使用指南
2014/11/27 PHP
老生常谈php 正则中的i,m,s,x,e分别表示什么
2017/03/02 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
javascript实现二分查找法实现代码
2007/11/12 Javascript
JS 自定义带默认值的函数
2011/07/21 Javascript
jquery实现按Enter键触发事件示例
2013/09/10 Javascript
JS实现鼠标单击与双击事件共存
2014/03/08 Javascript
javascript页面上使用动态时间具体实现
2014/03/18 Javascript
深入理解JavaScript系列(36):设计模式之中介者模式详解
2015/03/04 Javascript
javaScript中with函数用法实例分析
2015/06/08 Javascript
js漂浮广告实现代码
2015/08/15 Javascript
Bootstrap3学习笔记(三)之表格
2016/05/20 Javascript
JS实现“隐藏与显示”功能(多种方法)
2016/11/24 Javascript
vue2.0使用Sortable.js实现的拖拽功能示例
2017/02/21 Javascript
提高JavaScript执行效率的23个实用技巧
2017/03/01 Javascript
在node环境下parse Smarty模板的使用示例代码
2019/11/15 Javascript
Python操作MongoDB数据库PyMongo库使用方法
2015/04/27 Python
python使用线程封装的一个简单定时器类实例
2015/05/16 Python
python数字图像处理之骨架提取与分水岭算法
2018/04/27 Python
python使用正则筛选信用卡
2019/01/27 Python
Django的models模型的具体使用
2019/07/15 Python
Python空间数据处理之GDAL读写遥感图像
2019/08/01 Python
Python使用Pandas读写Excel实例解析
2019/11/19 Python
python+selenium 脚本实现每天自动登记的思路详解
2020/03/11 Python
Python txt文件如何转换成字典
2020/11/03 Python
详解HTML5之pushstate、popstate操作history,无刷新改变当前url
2017/03/15 HTML / CSS
写一个在SQL Server创建表的SQL语句
2012/03/10 面试题
药学专业个人自我评价
2013/11/11 职场文书
关于工资低的辞职信
2014/01/14 职场文书
《再别康桥》教学反思
2014/02/12 职场文书
护理学专业求职信
2014/06/29 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
工作说明书格式
2014/07/29 职场文书
2015年保险公司个人工作总结
2015/05/22 职场文书
Vue的生命周期一起来看看
2022/02/24 Vue.js