轉自 : http://www.th7.cn/db/mysql/201411/81407.shtml
出現這個錯誤的原因是,數據庫的編碼格式爲latin1 而我要將utf8的中文插入到數據庫中。
一開始修改 修改數據庫的編碼
alter table score default character set utf8;
但是插入中文依然出現錯誤。
然後通過查看數據表編碼
show create table score;
發現如下所示
注意 course 的編碼仍然爲 latin1 ,雖然此時表的編碼已經是 utf8 , 但是不知道爲什麼 列的編碼沒有更改過來
下面就是更改列的編碼即可
alter table score change score score varchar(50) character utf8;
修改成功之後
結果是列的編碼已經修改成功
接下來插入中文就沒有問題了