mysql是我们项目中非经常常使用的数据型数据库。
可是由于我们须要在数据库保存中文字符,所以经常遇到数据库乱码情况。以下就来介绍一下怎样彻底解决数据库中文乱码情况。
1.1、中文乱码 表的默认字符集是latin1.
在创建表的时候就须要指定表的字符集:
create table user(name varchar(11)) default charset=utf8;
1.2、数据库与操作系统编码
尽管在服务器端能够显示中文正常,可是在客户端可能会显示乱码。由于我们的服务器是UTF8。
show varibales like '%char%';
set character_set_server=utf8;
set character_set_database=utf8;
show variables like '%char%';
改动mysql配置文件my.ini。
[client] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] # 设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=C:\\web\\mysql-8.0.11 # 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错 # datadir=C:\\web\\sqldata # 允许最大连接数 max_connections=20 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB