字符长度不满最大长度的一半就会被截断

问题描述:

  • 最大长度为200个字符,实际放入不到100个字符就被截断了

问题原因

  • utf-8是变长编码,一个字符可能需要1-4字节空间来储存,其中ansii是一样的长度,剩下的都会变长。
  • 假如出现这个问题,大概率是长度是按照字节进行切分而不是按照字符进行切分的

问题的解决方案:

  • 更换计算长度的的方式,将长度由字节更换为字符数量
  • mysql的话,使用char_length()而不是length()
  • 如果都不现实,直接 * 3即可

你可能感兴趣的:(mysql)