JPA自动生成mysql表中文问题

2017-06-27  本文已影响679人  忧郁的小码仔

如果用JPA自动生成表的时候,创建的数据库没有指定编码格式(默认编码格式latin1),那么mysql对中文并不支持。比如插入中文的数据,可能会报错:

Error Code: 1366. Incorrect string value: ..........

一般在创建数据库的时候即可修改数据库编码为utf8,然后用JPA自动生成的数据库表会自动设置为编码utf8格式来支持中文,如果没有给数据库指定编码格式就用JPA 自动生成了表,就需要修改数据库、表及字段的编码格式为utf8来支持中文。

1.查看数据库编码

use <数据库名>;
show variables like 'character_set_database'; 

一般数据库的编码要支持中文的话用utf8即可,下面修改数据库编码:

alter database <数据库名> CHARACTER SET utf8;

2.查看数据表编码

show create table <表名>;

修改数据表编码

alter table <表名> character set utf8;

修改字段编码

alter table <表名> change <字段名> <字段名> <类型> character set utf8;

加油站加盟

上一篇下一篇

猜你喜欢

热点阅读