当前位置: 澳门新濠3559 > 数据库 > 正文

但是插入中文依然出现错误,然后写入命令保存

时间:2019-11-08 05:43来源:数据库
Incorrect string value: 'xE7xA8x8BxE5xBAx8F...' for column'course' at row 1 若果你查了一批,都以说在/etc/文件夹下新扩展四个my.cnf文件,然后把下部的一声令下写进去就能够了 并发这些似是而非的案由

Incorrect string value: 'xE7xA8x8BxE5xBAx8F...' for column 'course' at row 1

若果你查了一批,都以说在/etc/文件夹下新扩展四个my.cnf文件,然后把下部的一声令下写进去就能够了

并发这些似是而非的案由是,数据库的编码格式为latin1 而本身要将utf8的汉语插入到数据库中。

[java]view plaincopy

风华正茂起初改善  改过数据库的编码

[client]

[sql] view plain copy

default-character-set=utf8

 

[澳门新濠3559,mysql]

  1. alter table score default character set utf8;  

default-character-set=utf8

但是插入粤语依旧现身谬误。

[mysqld]

 

collation-server = utf8_unicode_ci

下一场经过查阅数据表编码

init-connect='SET NAMES utf8'

 

character-set-server = utf8

[sql] view plain copy

而是依然没成功的时候,那么,珍视来了,/etc/的路径应该是:

 

cd /private/etc/

  1. show create table score;  

接下来才是,新扩张一个 my.cnf 文件,然后写入命令保存退出,重启mysql

意识如下所示

ps:假如不能够保存,使用 sudo vim my.cnf

澳门新濠3559 1

Incorrect string value: '/xE7/xA8/x8B/xE5/xBA/x8F...' for column 'course' at row 1

介怀  course 的编码仍是 latin1 ,即使当时表的编码已然是 utf8 , 可是不晓得怎么 列的编码未有改观过来

并发那一个张冠李戴的原故是,数据库的编码格式为latin1 而自个儿要将utf8的华语插入到数据库中。

上边正是修正列的编码就可以

一起始改善  改进数据库的编码

 

alter table score default character set utf8;

[sql] view plain copy

可是插入粤语依然现身错误。

 

然后经过查阅数据表编码

  1. alter table score change score score varchar(50) character utf8;  

show create table score;

订正成功之后

发觉如下所示

 

留神  course 的编码仍然是 latin1 ,即便那个时候表的编码已是 utf8 , 不过不驾驭为什么 列的编码未有更改革来

澳门新濠3559 2

上面正是订正列的编码就能够

结果是列的编码已经校勘成功

alter table score change score score varchar(50) character utf8;

 

更改成功未来

接下去插入utf8华语就向来不难题了

结果是列的编码已经校勘成功

澳门新濠3559 3

 

 

编辑:数据库 本文来源:但是插入中文依然出现错误,然后写入命令保存

关键词: