2 lv1593570 lv1593570 于 2016.09.12 17:30 提问

MySQL Utf8插入偏僻字符出错

drop table if exists a;
CREATE TABLE a (
a varchar(255) NULL
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
;

select cast(0xD9D6 as char) into @x;
insert into a (a) values (@x);
select * from a;

2个回答

qq_20285507
qq_20285507   2016.09.12 17:33

字符集设成GBK试试

lv1593570
lv1593570 GBK也不行,都是这个错Incorrect string value: '\xD9\xD6' for column 'a' at row 1
接近 2 年之前 回复
yicp123
yicp123   2016.09.13 11:33

字符集和校对规则有4个级别的默认设置:服务器级、数据库级、表级和连接级。
你查下你的各级别字符集跟校对规则,修改成你需要的字符集跟校对规则就可以了。

参考自:MySQL的字符集和校对 http://www.data.5helpyou.com/article332.html

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
mysql 设置字符集为utf8
在搭自己的博客网站的时候需要将数据库的编码设置成utf8,因为系统
mysql 编码设置utf8 windows下的命令行插入中文报错
总结总之在建立数据库或数据表后面要加上 default charset=utf8插入中文数据最好不要在命令提示符中插入,输入命令set names utf8 后,插入中文数据会报错。我的思考如下:windows下的命令提示符也只是MySQL数据库client的用户接口,并且另一方面windows下的命令提示符字符编码是修改不了的,所以在windows命令提示符中输入的INSERT命令中的 中文字符
mysql字符编码问题latin1到utf8
测试目的: java从mysql读取数据并打印 测试环境1 a. hadoop集群某节点的环境是utf8,java代码也是utf8编码 b. 需要读取的mysql服,数据库、数据表均是latin1 方法及结果 运行mysql -u* -p* -A -h 进入mysql服 1. 先在mysql下确认原始数据是什么编码,经过下面三步可以确认原始数据是latin1 进
delphi操作utf8型mysql时,sql出错的解决
将中文名称通过AnsiToUtf8转换为utf,生成如下sql:update `dev_columns` set `column_cn_name` = "鐢ㄦ埛鍚?,`column_show` = 1 where `id` = 8 出现如下错误提示SQL Error: You have an error in your SQL syntax; check the manual that corre
mac下修改mysql默认字符集为utf8
1、首先检查默认安装的字符集 mysql> show variables like '%char%'; +--------------------------+--------------------------------------------------------+ | Variable_name | Value
MySQL设置字符集为UTF8(Windows版)
Windows版MySQL设置字符集全部为utf8的方式   MySQL安装目录下的my.ini文件   [client]节点 #修改客户端默认字符编码格式为utf8 default-character-set=utf8    (增加)   [mysql]节点 default-character-set=utf8    (修改)  
MySQL设置UTF8中文乱码的解决方案
许多小伙伴在MySQL建立数据库的时候使用的是UTF-8编码,在连接的时候使用的连接(jdbc:mysql://192.168.2.100:3306/test?characterEncoding=utf-8)也设置了characterEncoding=utf-8,但是在使用JAVA或者其他语言插入或者更新中文数据的时候总是显示???,在这里提供解决方案。 编辑安装在CentOS上的MySQL配
mysql 之utf8
因为要搞多语言版的项目,数据库是Mysql-4.1.9,使用PHP来操作Mysql,为了能使用utf8,今天搞了一天,终于搞定,期间也参考了好多资料,似乎都有问题,也许是没有找到真正的有用的资料,后来经过自己的“小聪明”,终于搞定! 注意:mysql 3.X的版本不支持utf8! 下面分别从mysql的安装,建数据库,建表以及PHP的连接来介绍! 1.安装mysql 很简单,我现
mysql utf8
mysql_options(m_pMysql, MYSQL_SET_CHARSET_NAME, "utf8"); 做个记录,免得将来自己也忘了,又得重新google之
linux mysql 5.7 修改默认字符集为utf8
1、通过  SHOW VARIABLES LIKE 'character_set_%'; 查看mysql字符集情况 mysql> show variables like "%char%"; +--------------------------+---------------+ | Variable_name | Value | +--------------------------+-----