天天看點

Mysql 插入中文錯誤:Incorrect string value: '\xE7\xA8\x8B\xE5\xBA\x8F...' for column 'course' at row 1

create table my_user (

   id tinyint(4) not null auto_increment,

   account varchar(255) default null,

    password varchar(255) default null,

   primary key (id)  

插入語句

insert into my_user values('1','admin','admin');

insert into my_user values('2','admin','admin');

insert into my_user values('3','admin','admin');

insert into my_user values('4','admin','admin');

insert into my_user values('5','admin','admin');

insert into my_user values('6','admin','admin');

insert into my_user values('7','system','sysytem');

insert into my_user values('11','拆','巨白');

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

出現這個錯誤的原因是,資料庫的編碼格式為latin1 而我要将utf8的中文插入到資料庫中。

一開始修改  修改資料庫的編碼

alter table my_user default character set utf8;

但是插入中文依然出現錯誤。

然後通過檢視資料表編碼

    show create table score;

發現表的編碼改過來了,但是列的編碼卻沒有改過來

   alter table my_user change account account varchar(255) character set utf8;

   alter table my_user change password password varchar(255) character set utf8;

然後插入中文,查詢正常~OK