zoukankan      html  css  js  c++  java
  • MySQL错误“Specified key was too long; max key length is 1000 bytes”的解决办法

    MySQL错误“Specified key was too long; max key length is 1000 bytes”的解决办法


    最近在处理执行 Flowable 6.5.0 官方提供的 MySQL 数据库语句脚本的时候,

    当执行到数据库中的某三个字段设置unique索引的时候,遇到了“Specified key was too long; max key length is 1000 bytes”这样的报错。

    问题原因

    MySQL 在建立索引时,数据库会先计算Index用到的字段长度(按下面比例乘起来不能超过限定的key长度1000):
    latin1 = 1 byte = 1 character
    uft8 = 3 byte = 1 character
    gbk = 2 byte = 1 character

    比如:

    两个字段长度均设置为255,当为utf8时,索引字段的长度为:(255*3+255*3)= 1530 > 1000

    解决方案

    调整字段的长度,让索引占用的字节长度小于 1000,就可以正常创建索引

    比如:

    将字段长度由255调整为127 ,这样上述的情况:(127*3+127*3)= 762 < 1000

  • 相关阅读:
    【动态规划】数字三角形4
    【动态规划】数字三角形3
    【动态规划】数字三角形2
    被破坏的电力系统
    二分法求函数的零点
    膨胀的木棍
    不重复地输出数
    和为给定数
    乘法游戏
    「AHOI2014/JSOI2014」拼图
  • 原文地址:https://www.cnblogs.com/miracle-luna/p/13800647.html
Copyright © 2011-2022 走看看