MySQL的中文显示问题解决方案(包括Java接口)
时间:2017-05-30 21:44 来源:linux.it.net.cn 作者:IT
MySQL原本的字符集是瑞典字符集:latin1 这个不支持中文,需要修改为utf8
创建的表必须是utf8字符集,但是MySQL 里面的配置可以完全不改,继续采用latin1字符集,支持中文只需要下面的必要条件:
1. 建立DataBase或者表时,指定utf8 例如:create database rhea DEFAULT CHARSET=utf8;
2. JDBC连接串指定utf8 jdbc:mysql://localhost:3306/rhea?characterEncoding=UTF-8
符合以上2个条件就OK
create table RHEA_KVM
(
ID int not null auto_increment comment 'kvmID',
NAME varchar(128) comment 'kvm名称',
OS varchar(64) comment '操作系统,对应字典表'
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
比如上面这样,也不用每个表都指定,可以在创建database时指定
create database rhea ENGINE=InnoDB DEFAULT CHARSET=utf8';
这样JDBC直接操作中文没有任何问题
注意:按照上面的办法做了后,Java, MYSQLWorkBench都没有问题,但是,MySQL CMD下面就有问题,仍然看到乱码,这时执行set names gbk;一切OK,不知为何??
(责任编辑:IT)
MySQL原本的字符集是瑞典字符集:latin1 这个不支持中文,需要修改为utf8 创建的表必须是utf8字符集,但是MySQL 里面的配置可以完全不改,继续采用latin1字符集,支持中文只需要下面的必要条件: 1. 建立DataBase或者表时,指定utf8 例如:create database rhea DEFAULT CHARSET=utf8; 2. JDBC连接串指定utf8 jdbc:mysql://localhost:3306/rhea?characterEncoding=UTF-8 符合以上2个条件就OK
create table RHEA_KVM
create database rhea ENGINE=InnoDB DEFAULT CHARSET=utf8'; 这样JDBC直接操作中文没有任何问题 注意:按照上面的办法做了后,Java, MYSQLWorkBench都没有问题,但是,MySQL CMD下面就有问题,仍然看到乱码,这时执行set names gbk;一切OK,不知为何?? (责任编辑:IT) |