当前位置:首页 > 行业动态 > 正文

如何在MySQL数据库中正确设置中文字符编码?

MySQL数据库中文设置通常涉及两个关键步骤:在创建数据库或数据表时指定字符集为utf8或utf8mb4以支持中文字符;在连接数据库时确保客户端和服务器之间的通信也使用相同的字符集。

MySQL数据库中文设置主要包括以下几个步骤:

1、修改MySQL配置文件

2、创建数据库和表时指定字符集

3、插入数据时指定字符集

4、查询数据时指定字符集

1. 修改MySQL配置文件

找到MySQL的配置文件my.cnf(通常位于/etc/mysql/或/etc/mysql/mysql.conf.d/目录下),在[mysqld]部分添加以下内容:

[mysqld]
charactersetserver=utf8mb4
collationserver=utf8mb4_unicode_ci

保存并关闭文件,然后重启MySQL服务使配置生效。

2. 创建数据库和表时指定字符集

创建数据库时,可以使用以下命令指定字符集为utf8mb4:

CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

创建表时,同样需要指定字符集:

CREATE TABLE mytable (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(255) NOT NULL
) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

3. 插入数据时指定字符集

在插入数据时,可以使用_utf8mb4后缀来指定字符集:

INSERT INTO mytable (name) VALUES ('张三_utf8mb4');

或者在连接MySQL时指定字符集:

SET NAMES utf8mb4;
INSERT INTO mytable (name) VALUES ('张三');

4. 查询数据时指定字符集

在查询数据时,也可以使用_utf8mb4后缀来指定字符集:

SELECT * FROM mytable WHERE name = '张三_utf8mb4';

或者在连接MySQL时指定字符集:

SET NAMES utf8mb4;
SELECT * FROM mytable WHERE name = '张三';
0