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内核介绍及扩展开发指南―基础知识
Sep 11 PHP
PHP基础教程(php入门基础教程)一些code代码
Jan 06 PHP
jQuery+php实现ajax文件即时上传的详解
Jun 17 PHP
PHP基于MySQL数据库实现对象持久层的方法
Jun 17 PHP
PHP实现加强版加密解密类实例
Jul 29 PHP
PHP中array_keys和array_unique函数源码的分析
Feb 26 PHP
thinkphp3.x中变量的获取和过滤方法详解
May 20 PHP
AES加解密在php接口请求过程中的应用示例
Oct 26 PHP
用php+ajax新建流程(请假、进货、出货等)
Jun 11 PHP
利用php的ob缓存机制实现页面静态化方法
Jul 09 PHP
CI框架(CodeIgniter)实现的数据库增删改查操作总结
May 23 PHP
阿里云服务器搭建Php+Apache运行环境的详细过程
May 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
PHP读写文件的方法(生成HTML)
2006/11/27 PHP
为IP查询添加GOOGLE地图功能的代码
2010/08/08 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
2016/03/21 PHP
PHP常用函数总结(180多个)
2016/12/25 PHP
详解PHP字符串替换str_replace()函数四种用法
2017/10/13 PHP
JS 无法通过W3C验证的处理方法
2010/03/09 Javascript
触屏中的JavaScript事件分析
2015/02/06 Javascript
Javascript通过overflow控制列表闭合与展开的方法
2015/05/15 Javascript
jquery如何获取元素的滚动条高度等实现代码
2015/10/19 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
2016/12/16 Javascript
前端js弹出框组件使用方法
2020/08/24 Javascript
解决vue attr取不到属性值的问题
2018/09/18 Javascript
React降级配置及Ant Design配置详解
2018/12/27 Javascript
浅谈Javascript中的对象和继承
2019/04/19 Javascript
Vue 3.x+axios跨域方案的踩坑指南
2019/07/04 Javascript
js实现时间日期校验
2020/05/26 Javascript
vue2.0 watch里面的 deep和immediate用法说明
2020/10/30 Javascript
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
Python生成器generator用法示例
2018/08/10 Python
python多进程读图提取特征存npy
2019/05/21 Python
利用rest framework搭建Django API过程解析
2019/08/31 Python
浅析Python+OpenCV使用摄像头追踪人脸面部血液变化实现脉搏评估
2019/10/17 Python
pytorch 实现tensor与numpy数组转换
2019/12/27 Python
Python读取多列数据以及用matplotlib制作图表方法实例
2020/09/23 Python
详解python中的异常捕获
2020/12/15 Python
Answear匈牙利:来自全球200多个知名时尚品牌
2017/04/21 全球购物
世界上最大的在线汽车租赁预订平台:Rentalcars.com(支持中文)
2018/10/12 全球购物
介绍一下SOA和SOA的基本特征
2016/02/24 面试题
一名毕业生的自我鉴定
2013/12/04 职场文书
高一学年自我鉴定范文(3篇)
2014/09/26 职场文书
党建工作目标管理责任书
2015/01/29 职场文书
2015年小学实验室工作总结
2015/07/28 职场文书
高中团支书竞选稿
2015/11/21 职场文书
pytorch显存一直变大的解决方案
2021/04/08 Python
matplotlib之pyplot模块实现添加子图subplot的使用
2021/04/25 Python
Mysql表数据比较大情况下修改添加字段的方法实例
2022/06/28 MySQL