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 相关文章推荐
PHP编程中字符串处理的5个技巧小结
Nov 13 PHP
Zend的MVC机制使用分析(一)
May 02 PHP
discuz加密解密函数使用方法和中文注释
Jan 21 PHP
php中的filesystem文件系统函数介绍及使用示例
Feb 13 PHP
php强制文件下载而非在浏览器打开的自定义函数分享
May 08 PHP
PHP程序员必须清楚的问题汇总
Dec 18 PHP
PHP CURL 多线程操作代码实例
May 13 PHP
yii2分页之实现跳转到具体某页的实例代码
Jun 02 PHP
[原创]smarty简单模板变量输出方法
Jul 09 PHP
tp5.1 框架join方法用法实例分析
May 26 PHP
一文看懂PHP进程管理器php-fpm
Jun 01 PHP
PHP $O00OO0=urldecode &amp; eval 解密,记一次商业源码的去后门
Sep 13 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 强制性文件下载功能的函数代码(任意文件格式)
2010/05/26 PHP
php批量缩放图片的代码[ini参数控制]
2011/02/11 PHP
PHP爆绝对路径方法收集整理
2012/09/17 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
2014/01/14 PHP
mac os快速切换多个PHP版本的方法
2017/03/07 PHP
Thinkphp5+plupload实现的图片上传功能示例【支持实时预览】
2019/05/08 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
PHP实现简易用户登录系统
2020/07/10 PHP
javascript作用域容易记错的两个地方分析
2012/06/22 Javascript
js中Image对象以及对其预加载处理示例
2013/11/20 Javascript
jquery实现的一个简单进度条效果实例
2014/05/12 Javascript
盘点javascript 正则表达式中 中括号的【坑】
2016/03/16 Javascript
Node.js批量给图片加水印的方法
2016/11/15 Javascript
微信小程序开发之录音机 音频播放 动画实例 (真机可用)
2016/12/08 Javascript
Chrome浏览器的alert弹窗禁止再次弹出后恢复的方法
2016/12/30 Javascript
Element-ui tree组件自定义节点使用方法代码详解
2018/09/17 Javascript
ionic使用angularjs表单验证(模板验证)
2018/12/12 Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
2019/09/05 Javascript
在vue中实现某一些路由页面隐藏导航栏的功能操作
2020/09/21 Javascript
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
Python中的单继承与多继承实例分析
2018/05/10 Python
Python Numpy库安装与基本操作示例
2019/01/08 Python
python字符串Intern机制详解
2019/07/01 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
python输入中文的实例方法
2020/09/14 Python
详解CSS3中的box-sizing(content-box与border-box)
2019/04/19 HTML / CSS
HTML5实现锚点时请使用id取代name
2013/09/06 HTML / CSS
处理HTML5新标签的浏览器兼容版问题
2017/03/13 HTML / CSS
H5 video poster属性设置视频封面的方法
2020/05/25 HTML / CSS
查摆问题自查报告范文
2014/10/13 职场文书
致百米运动员广播稿5篇
2014/10/13 职场文书
六一儿童节开幕词
2015/01/29 职场文书
2016入党心得体会范文
2016/01/06 职场文书
浅谈如何写好演讲稿?
2019/06/12 职场文书
golang内置函数len的小技巧
2021/07/25 Golang