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 相关文章推荐
使用 MySQL 开始 PHP 会话
Dec 21 PHP
php错误提示failed to open stream: HTTP request failed!的完美解决方法
Jun 06 PHP
自己写的兼容低于PHP 5.5版本的array_column()函数
Oct 24 PHP
PHP将MySQL的查询结果转换为数组并用where拼接的示例
May 13 PHP
PHP图片添加水印功能示例小结
Oct 03 PHP
php  PATH_SEPARATOR判断当前服务器系统类型实例
Oct 28 PHP
php递归函数怎么用才有效
Feb 24 PHP
PHP封装curl的调用接口及常用函数详解
May 31 PHP
laravel 框架配置404等异常页面
Jan 07 PHP
PHP+Ajax实现的检测用户名功能简单示例
Feb 12 PHP
PHP小程序支付功能完整版【基于thinkPHP】
Mar 26 PHP
laravel validate 设置为中文的例子(验证提示为中文)
Sep 29 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 CLI实现简单的数据库实时监控调度
2009/07/01 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
php输出反斜杠的实例方法
2019/09/19 PHP
常见表单重复提交问题整理及解决方法
2013/11/13 Javascript
js实现弹出窗口、页面变成灰色并不可操作的例子分享
2014/05/10 Javascript
jQuery获取选中内容及设置元素属性的方法
2014/07/09 Javascript
javascript简单实现类似QQ头像弹出效果的方法
2015/08/03 Javascript
JS实现从顶部下拉显示的带动画QQ客服特效代码
2015/10/24 Javascript
浅谈js和css内联外联注意事项
2016/06/30 Javascript
Bootstrap基本插件学习笔记之标签切换(17)
2016/12/08 Javascript
js仿QQ邮箱收件人选择与搜索功能
2017/02/10 Javascript
js 性能优化之快速响应的用户界面
2017/02/15 Javascript
解决给dom元素绑定click等事件无效问题的方法
2017/02/17 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
vue.js 1.x与2.0中js实时监听input值的变化
2017/03/15 Javascript
vue2.0在table中实现全选和反选的示例代码
2017/11/04 Javascript
基于webpack-hot-middleware热加载相关错误的解决方法
2018/02/22 Javascript
p5.js入门教程和基本形状绘制
2018/03/15 Javascript
Vue 组件传值几种常用方法【总结】
2018/05/28 Javascript
VUE v-model表单数据双向绑定完整示例
2019/01/21 Javascript
vue自动路由-单页面项目(非build时构建)
2019/04/30 Javascript
vue2配置scss的方法步骤
2019/06/06 Javascript
Laravel 如何在blade文件中使用Vue组件的示例代码
2020/06/28 Javascript
Python利用字典将两个通讯录文本合并为一个文本实例
2018/01/16 Python
tensorflow 用矩阵运算替换for循环 用tf.tile而不写for的方法
2018/07/27 Python
python文件转为exe文件的方法及用法详解
2019/07/08 Python
浅谈html5标签css3的常用样式
2016/10/20 HTML / CSS
联想新西兰官方网站:Lenovo New Zealand
2018/10/30 全球购物
新闻专业个人自我评价
2013/09/21 职场文书
保护环境建议书
2014/03/12 职场文书
精神文明建设先进个人事迹材料
2014/12/24 职场文书
朋友聚会祝酒词
2015/08/10 职场文书
小学语文课《掌声》教学反思
2016/03/03 职场文书
能用CSS实现的就不要麻烦JavaScript了
2021/10/05 HTML / CSS
Redis官方可视化工具RedisInsight安装使用教程
2022/04/19 Redis