位置: 编程技术 - 正文

Laravel 5.4中migrate报错: Specified key was too long error的解决

编辑:rootadmin

推荐整理分享Laravel 5.4中migrate报错: Specified key was too long error的解决,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

大家都知道,我们经常做项目都团队协作开发,每个人都在自己本地的数据库,如果你曾经出现过让同事手动在数据库结构中添加字段的情况,数据库迁移可以解决你这个问题。

不仅如此,在线上部署的时候,也避免了手动导入数据库或手动修改数据结构的麻烦,数据迁移帮你方便的维护着数据结构。

但方便的同时也会伴随着一些问题,下面这篇文章将详细给大家介绍关于Laravel5.4中migrate报错Specified key was too long error的解决方法,下面话不多说了,来一起看看详细的介绍吧。

Laravel 5.4中migrate报错: Specified key was too long error的解决

发现问题

Laravel 5.4默认使用utf8mb4字符编码,而不是之前的utf8编码。因此运行php artisan migrate 会出现如下错误:

问题根源

MySql支持的utf8编码最大字符长度为3字节,如果遇到4字节的宽字符就会出现插入异常。三个字节UTF-8最大能编码的Unicode字符是0xffff,即Unicode中的基本多文种平面(BMP)。因而包括Emoji表情(Emoji是一种特殊的Unicode编码)在内的非基本多文种平面的Unicode字符都无法使用MySql的utf8字符集存储。

这也应该就是Laravel 5.4改用4字节长度的utf8mb4字符编码的原因之一。不过要注意的是,只有MySql 5.5.3版本以后才开始支持utf8mb4字符编码(查看版本:selection version();)。如果MySql版本过低,需要进行版本更新。

注:如果是从Laravel 5.3升级到Laravel 5.4,不需要对字符编码做切换。

解决问题

升级MySql版本到5.5.3以上。 手动配置迁移命令migrate生成的默认字符串长度,在AppServiceProvider中调用Schema::defaultStringLength方法来实现配置:

总结

标签: Laravel 5.4中migrate报错: Specified key was too long error的解决

本文链接地址:https://www.jiuchutong.com/biancheng/274983.html 转载请保留说明!

上一篇:PHP实现保存网站用户密码到css文件(通用型)(php实现保存网站内容)

下一篇:Linux平台中使用PHP把word转pdf的实现方法(linux如何使用)

  • 待抵扣进项税额转入进项税额
  • 增值税发票综合服务平台怎么下载
  • 工资延期发放最多不能超过多少天
  • 实收资本印花税是营业账簿吗
  • 春节补贴是加还是减
  • 三证合一后税务登记证要收回吗
  • 冲红发票怎么写备注
  • 两家公司实际控制人为一个人
  • 道路施工企业的财务核算包括
  • 标书费收据丢失怎么办
  • 进口关税专用缴款书在哪里打印
  • 公司车辆计提是含税还是不含税?
  • 契税可以银行转让吗
  • 一般纳税人 开以前的税率
  • 税务手工发票还能用吗2019
  • 水费分割单由哪一方出具
  • 非财政专项资金和其他资金的区别
  • 汇算清缴申报后怎样撤销
  • 当月认证下月抵扣
  • 合作社未按时报税怎么处理?
  • 固定资产减值账务处理怎么做
  • mac怎么安装字体文件
  • 电缆与变压器连接有何规定
  • 职工福利费算职工薪酬吗
  • 合同条款签订
  • 发票上没有校验码
  • 苹果mac电脑自带的软件
  • 所得税汇算清缴前取得跨年发票
  • 索尼笔记本电脑官网
  • nalntsrv.exe - nalntsrv是什么进程 有什么用
  • 委托贷款会计科目有哪些
  • thinkphp设置伪静态
  • winform缓存解决方案
  • element ui 左侧导航
  • chat ty
  • 公司让员工提前离职,可以结清工资吗
  • 费用报销重复了怎么写情况说明
  • 购货方开工具红包怎么开
  • 银行存钱转账
  • 税控服务费减免会计分录
  • 印花税是按照开票金额还是当月收入
  • 无形资产有在建工程吗
  • 固定资产转换为投资性房地产转换日
  • 公司聘请专家工资怎么算
  • 退货开增值税专票可以用负数吗
  • 无形资产根据什么科目填列
  • 展厅租赁税率
  • 汇算清缴交通费填在办公费里面吗
  • 记账凭证背面贴原始凭证图片
  • 会计凭证装订的注意事项
  • 免税蔬菜税额用什么表示
  • sql语言包括哪三种类型
  • 分配服务器失败
  • sql2000卸载干净
  • windows xp搜索功能在哪里
  • 商用计算机英文
  • macOS 10.12.2下PDF崩溃严重怎么回事 macOS 10.12.2下PDF崩溃的原因以及解决办法
  • centos搭建svn服务器
  • Fedora Core 8中yum设置
  • win7和2008r2
  • win10 预览版变正式版
  • ubuntu tc
  • linux常用的几种压缩工具
  • win10自带的杀软叫什么
  • linux系统怎么关闭程序
  • linux充当虚拟内存的是哪个分区
  • win10 20h2怎么装
  • 铁嘴下山全文免费阅读
  • android中的active_result
  • 简单 粗暴
  • shell脚本判断一个字符串是否为空
  • angularjs教程
  • node.js实战
  • js调用图片代码
  • 基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法
  • 广东省国家税务总局稽查局局长
  • 吉林省国家税务局官网
  • 杭州市国税稽查三科科长
  • 税务人员少征税款
  • 代理记账费用可以全额抵扣吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设