如果你查了一堆,都是說在/etc/文件夾下新增一個(gè)my.cnf文件,然后把下面的命令寫進(jìn)去就可以了
[java]view plaincopy
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server?=?utf8_unicode_ci
init-connect='SET?NAMES?utf8'
character-set-server?=?utf8
但是仍然沒成功的時(shí)候,那么,重點(diǎn)來了,/etc/的路徑應(yīng)該是:
cd /private/etc/
然后才是,新增一個(gè) my.cnf 文件,然后寫入命令保存退出,重啟mysql
ps:如果無法保存,使用 sudo vim my.cnf
Incorrect string value: '/xE7/xA8/x8B/xE5/xBA/x8F...' for column 'course' at row 1
出現(xiàn)這個(gè)錯(cuò)誤的原因是,數(shù)據(jù)庫的編碼格式為latin1 而我要將utf8的中文插入到數(shù)據(jù)庫中。
一開始修改? 修改數(shù)據(jù)庫的編碼
alter table score default character set utf8;
但是插入中文依然出現(xiàn)錯(cuò)誤。
然后通過查看數(shù)據(jù)表編碼
show create table score;
發(fā)現(xiàn)如下所示
注意? course 的編碼仍然為 latin1 ,雖然此時(shí)表的編碼已經(jīng)是 utf8 , 但是不知道為什么 列的編碼沒有更改過來
下面就是更改列的編碼即可
alter table score change score score varchar(50) character utf8;
修改成功之后
結(jié)果是列的編碼已經(jīng)修改成功