美文网首页
JPA自动生成mysql表中文问题

JPA自动生成mysql表中文问题

作者: 忧郁的小码仔 | 来源:发表于2017-06-27 09:58 被阅读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;
    

    加油站加盟

    相关文章

      网友评论

          本文标题:JPA自动生成mysql表中文问题

          本文链接:https://www.haomeiwen.com/subject/leiscxtx.html