我的字段类型开始是text类型,数据是utf-8,中文字符有两万多,插入时候说是data truncated for column 'xx' at row 1, 就是这个字段太长,text类型要65536字节呢,怎么还会太长?
  另外,我换成long text类型,没问题了,但是长度到3万以上还是报错,原因还是data truncated...,与上面一样。longtext已经够长了,怎么可能还有错。
  
  哪位大侠知道这个问题,帮忙如何解决!

解决方案 »

  1.   

    Text 正如你所说是字节为单位,但你的utf8两万个中文可是以字符为单位!一个utf8中文占3个字节
      

  2.   

    改成longtext 还不行,你需要检查一下 max_allowed_packet 系统参数,它对你的SQL语句最大长度做了限制。可以改大一些。
      

  3.   


    还是不行啊,我的mysql是Windows下自动安装的,那个my.ini没有这个字段,手动添加这个字段好像不起作用。希望能给点办法,谢谢了。
      

  4.   

    手动加进你的my.ini然后重启MySQL服务。