今天,使用mysql workbench 给一张表添加了一列varchar类型的列。在插入中文数据时出现
这是编码问题,只要将表的类型修改为utf-8就ok了。
alter table 数据库名.表名 convert to character set utf8;
执行完这条语句之后就可以插入中文数据啦。
如果多张表存在这个问题可以直接修改数据库的编码类型
alter database 数据名 character set utf8;
如果想在创建数据库时就解决这个问题可以在建表时加
ENGINE=InnoDB DEFAULT CHARSET=utf8
例如:
create table newsBody(newId int not null auto_increment,article text not null,bimage varchar(100),
primary key(newId),
foreign key(newId) references new(newId)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;