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变量引用的面试题
Aug 08 PHP
PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法
Aug 22 PHP
thinkphp3.0 模板中函数的使用
Nov 13 PHP
Destoon实现多表查询示例
Aug 21 PHP
php打印输出棋盘的实现方法
Dec 23 PHP
ioncube_loader_win_5.2.dll的错误解决方法
Jan 04 PHP
php的闭包(Closure)匿名函数详解
Feb 22 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
Nov 05 PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
Feb 16 PHP
Laravel 中使用 Vue.js 实现基于 Ajax 的表单提交错误验证操作
Jun 30 PHP
thinkPHP框架RBAC实现原理分析
Feb 01 PHP
php-fpm中max_children的配置
Mar 15 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
漫威DC御用漫画家去世 他的表情包曾走红网络
2020/04/09 欧美动漫
php array_slice函数的使用以及参数详解
2008/08/30 PHP
MYSQL 小技巧 -- LAST_INSERT_ID
2009/11/24 PHP
基于PHP常用函数的用法详解
2013/05/10 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
2015/12/10 PHP
PHP 7.0.2 正式版发布
2016/01/08 PHP
PHP生成图像验证码的方法小结(2种方法)
2016/07/18 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
2021/03/09 PHP
DOM和XMLHttpRequest对象的属性和方法整理
2012/01/04 Javascript
JavaScript高级程序设计(第3版)学习笔记8 js函数(中)
2012/10/11 Javascript
js 弹出框只弹一次(二次修改之后的)
2013/11/26 Javascript
解析JavaScript中delete操作符不能删除的对象
2013/12/03 Javascript
Node.js实现JS文件合并小工具
2016/02/02 Javascript
用jQuery的AJax实现异步访问、异步加载
2016/11/02 Javascript
bootstrap模态框垂直居中效果
2016/12/03 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
详解react-router如何实现按需加载
2017/06/15 Javascript
jQuery修改DOM结构_动力节点Java学院整理
2017/07/05 jQuery
解决IE7中使用jQuery动态操作name问题
2017/08/28 jQuery
vue.js中引入vuex储存接口数据及调用的详细流程
2017/12/14 Javascript
详解vue页面首次加载缓慢原因及解决方案
2019/11/06 Javascript
vue路由守卫,限制前端页面访问权限的例子
2019/11/11 Javascript
解决vue-pdf查看pdf文件及打印乱码的问题
2020/11/04 Javascript
举例讲解Python程序与系统shell交互的方式
2015/04/09 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
Python实现的多线程同步与互斥锁功能示例
2017/11/30 Python
Python将DataFrame的某一列作为index的方法
2018/04/08 Python
jupyter notebook引用from pyecharts.charts import Bar运行报错
2020/04/23 Python
python中强大的format函数实例详解
2018/12/05 Python
Pytorch 保存模型生成图片方式
2020/01/10 Python
HTML5给汉字加拼音收起展开组件的实现代码
2020/04/08 HTML / CSS
英国DIY汽车维修配件网站:DIY Car Service Parts
2019/08/30 全球购物
物理教育专业毕业生推荐信
2013/11/03 职场文书
医学护理毕业生自荐信
2013/11/07 职场文书
廉洁家庭事迹材料
2014/05/15 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书