mysql默认编码是latin1
,而我们存储中文一般用utf8
,如果你用jdbc向mysql中插入中文会报错,下面我们来修改数据库的字符集
首先打开mysql配置文件
vi /etc/my.cnf
在[mysqld]
下面加上
character-set-server=utf8
init_connect='set names utf8'
在文本的最后加上(一定不要加在[mysqld]
这个标签内容的中间):
[mysql]
default_character_set=utf8
[client]
default_character_set=utf8
注意是utf8
不是utf-8
然后重启mysql,这样新建的数据库使用的就是utf8
编码了,我们可以用下面命令查看mysql使用的编码
mysql> show variables like 'char_%';
如果是已经创建的数据库,还需要手动修改数据库和表和列名的编码才可以插入中文
mysql>alter database 数据库名 character set utf8;
msyql>alter table 表名 character set utf8;
mysql>alter table 表名 modify 列名 数据类型 character set utf8;