我的原始数据库字符集是latin1我现在想从这个数据库中备份出数据,并转为GBK字符集编码我现在从数据库读数据的语句如下:
select CONVERT(`id` USING gbk) as comarticleclassid,CONVERT(`name` USING gbk) as comarticleclassname,CONVERT(`linkurl` USING gbk) as comarticleclasslinkurl,CONVERT(`upid` USING gbk) as comarticleclassupid,CONVERT(`class` USING gbk) as comarticleclassclass,CONVERT(`position` USING gbk) as comarticleclassposition,CONVERT(`status` USING gbk) as comarticleclassstatus from `fm_comarticleclass` order by `id` limit 0,100这个语句读出来的数据还是乱码.请问朋友们.有没办法实现我需要的功能.还是只能重新建一个数据库.再慢慢的来录入数据.请知道的朋友回答下。谢谢!

解决方案 »

  1.   

    导出OLD的数据为TXT,新建立数据库,设置字符为GBK,再将TXT文件导入
      

  2.   

    常的做法是先所数据
    select * from yourTable  NTO OUTFILE  'xxx.txt';然后把删除,再以新的字符集建表,再 LOAD DATA INFILE
      

  3.   

    测试了上面的方法。
    在mysql客户端查询时,还是出现问号..不知道什么原因了 
      

  4.   

    你用的什么客户端连接mymql---server端的???
      

  5.   

    在mysql客户端查询时,还是出现问号..有没有set names 'gbk';
      

  6.   

    还有就是看一下你的“DOS”窗口的默认字体是什么?做如下操作。1。 在你的DOS窗中的左上角标题栏片左键,属性,
    2。在字体中,选择“宋体”,确认
    3。mysql中 set names 'gbk';应该就可以了。