MySQL字符问题
《MySQL字符问题》要点:
我用的是ibatis,终于找到原因了,我是这么办理的: 原url地址是:jdbc:mysql://localhost:3306/comment1 改为:jdbc:mysql://localhost:3306/comment1??useUnicode=true&characterEncoding=UTF-8 就OK了. 2.Incorrect string value: 'xF0x9F...' for column 'XXX' at row 1 这个问题,原因是UTF-8编码有可能是两个、三个、四个字节.Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去. 我的办理方案是这样的 1.在mysql的安装目录下找到my.ini,作如下修改: [mysqld] character-set-server=utf8mb4 [mysql] default-character-set=utf8mb4 修改后重启Mysql 2. 将已经建好的表也转换成utf8mb4 命令:alter table TABLE_NAME convert to character set utf8mb4 collate utf8mb4_bin; (将TABLE_NAME替换成你的表名) 然后就OK了.网上流传的一个版本增加了一个步骤,便是把mysql环境变量将character_set_client,character_set_connection,character_set_database,character_set_results,character_set_server 都修改成utf8mb4 欢迎参与《MySQL字符问题》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |