MySQL插入中文数据报错,插入失败的问题处理

报错信息:

ERROR 1366 (HY000): Incorrect string value: '\xE6\x96\xB0\xE9\x97\xBB...' for column 'title' at row1

处理办法:

我们先用语句看一下MySQL的编码方式:

show variables like 'character%';
MySQL插入中文数据报错,插入失败的问题处理_第1张图片

可以明显的看到 database、server的编码为latinal,下面就通过修改MySQL目录下的my.ini来处理这个问题.

如果在MySQL安装目录下没有看到my.ini 可以尝试下面的方法:

修改文件夹选项,选中“显示隐藏的文件、文件夹和驱动器”

用记事本或者notepad++打开my.ini ,现在开始修改:

找到【mysql】

 

修改成:

然后继续往下找,找到【mysqld】修改:

MySQL插入中文数据报错,插入失败的问题处理_第2张图片

然后保存,重启mysql服务(记得把mysql的服务进程关闭,不能只是关闭命令行窗口然后重新打开,cmd中命令;net stop mysql,net start mysql)。

再次执行:show variables like 'character%';

MySQL插入中文数据报错,插入失败的问题处理_第3张图片

很不幸,还是报错了,还是和刚才一样的错。

因为,这个数据库是我们在没有修改编码方式的时候建立的,所以它的编码方式没有被改变,这时候我们就要重新新建一个数据库和表,然后插入数据,成功。

 

 

CREATE TABLE tb_user(
    id INT(32) PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(32),
    address VARCHAR(64)
    );

INSERT INTO tb_user VALUES ('1','小韩','北京市海淀区');
INSERT INTO tb_user VALUES ('2','小石','北京市昌平区');
INSERT INTO tb_user VALUES ('3','小陈','北京市顺义区');

你可能感兴趣的:(MySQL插入中文数据报错,插入失败的问题处理)