Incorrect string value: '\xE5\xB7\xA5\xE8\xB5\x84...' for column xxx

问题描述:项目用了  JPA自动创建表,结果数据库默认字符编码为 latin1编码,然后插入中文就报错了,命令行命令不常用,这边记录下

解决方法:

show create table {table_name};   查看 表的字符编码和列的字符编码

alter table salary character set utf8 ;  修改表字符编码 

alter table {table_name} change {column_name} {column_name} {column_type} CHARACTER SET utf8 ;

修改MySQL默认编码格式方法如下

Ubuntu 通过  apt-get install 安装的 MySQL

nano /etc/mysql/mysql.conf.d/mysqld.cnf    修改配置文件

[mysqld]  下面加一行   character_set_server = utf8  保存

service mysql restart  重启MySQL服务

进入MySQL 控制台

show variables like 'character%';  查看各种字符编码验证

 

我自己的解决方法:

我是新建的表,之前没有数据,所以取巧了下:

show create table {table_name};  得到建表语句

然后 把里面 字符类型的后面都加上或者改为  CHARACTER SET utf8

后面也加上 DEFAULT CHARSET=utf8 

之后   drop table  {table_name}; 删除表

重新运行新的建表语句就OK了

一个一个改列方便多了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章