Incorrect string value: '\xE7\x8F\xBD\xE7\x8F\xBA' for column 'card_holder_name' at row 1

解决方案 »

  1.   

    编码问题
    show variables like 'char%';
    set names 'utf-8';
      

  2.   

    http://imysql.cn/
      

  3.   


    是不是character_set_database   | gb2312  这项要改成utf-8,怎么改?
      

  4.   

    字符集不统一问题
    GB2312、UTF8
    show create table xxx
    在统一的字符集下重新建立表、插入记录
      

  5.   

    set  names  gbk;再insert
    不行就set names utf8再不行就set names latin1
      

  6.   

    插入数据时,连接字符和数据库表不一致引发的,建议在导入或执行insert 语句前使用set names 设置和数据库表一致的字符集,设置只对当前会话有效。
      

  7.   

    果然是建好的数据库格式还是gb2312的问题,我重新建了一个utf8格式的数据库就OK了,但是我不想把原来已有的数据库删了再重建,太麻烦;有没有直接在数据库基础上该的方法???
      

  8.   

    不知道能不能用像navicat这种工具先备份数据,再来导入
      

  9.   

    你的问题和上面版主所说的“字符集统一”没关系,当然所谓的“字符集统一”可以解决所有的问题。
    因为你的服务端的字符集character_set_database 为GB2312,所以只能存储一级汉字
    所以导致部分汉字无法存入。
    解决的方法是修改服务端字符集character_set_database为gbk或UTF8直接修改也是可以的,不过要每个表每个字段的改过去,很麻烦的。
    ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;最好的方法是导出(不要导出表结构), 新建表,再导入。
      

  10.   

    http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码