insert into ceenews(catalogid,title,issueor,assessor,createtime,modifiedtime,author,rootin,summary,keywords,content) select 2,InfoTitle,'lai','cee',134,13432,author,'cee',InfoSummary,InfoKey,InfoContent from EducateStudy;
总是提示ERROR 1406 (22001): Data too long for column 'title' at row 1
提示信息好象是说:EducateStudy.InfoTitle长度超过了ceenews.Title的长度,但是仔细看了都是varchar(255).
我将这个字段导入删除,其他字段都有类似情况,但是那些字段长度都是一样的。
现在怎么处理才能将数据从EducateStudy弄到ceenews中?

解决方案 »

  1.   

    column 'title' 是什么字符集,在程序里面执行sql插入中文字符
      

  2.   

    select 2,InfoTitle,'lai','cee',134,13432,author,'cee',InfoSummary,InfoKey,InfoContent from EducateStudy;
    这个返回的结果是否是多个,mysql在用多重查询时,保允许返回一个值啊
      

  3.   

    一个字符集是GBK,一个是latin1
    但是我将latin1改为gbk,还是同样错误。
      

  4.   

    Data too long for column 'title' at row 1
    很明显
    字段title的类型改大一点。比如TEXT
      

  5.   

    建议将sql打印出来debug,是同一个server中导数据么?
      

  6.   


    Data too long for column 'title' at row 1
    很明显
    字段title的类型改大一点。比如TEXT答案是:你的这个解决办法明眼人一看都看的出来,并且解决办法,也是你说的。结果还是报错。
    建议将sql打印出来debug,是同一个server中导数据么?答:是在同一个server,同一个库中。