设置mysql 数据库和表 的编码方式UTF-8

要设置 MySQL 数据库表和字段的编码方式为 UTF-8,可以使用下面的SQL语句:

1. 设置数据库默认编码为 UTF-8:

sql 复制代码
ALTER DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

2. 创建表时指定编码为 UTF-8:

sql 复制代码
CREATE TABLE your_table_name (
    column1 VARCHAR(100) CHARACTER SET utf8mb4,
    column2 TEXT CHARACTER SET utf8mb4,
    ...
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

3. 修改已存在表的编码方式为 UTF-8:

sql 复制代码
ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

4. 修改表中字段的编码方式为 UTF-8:

sql 复制代码
ALTER TABLE your_table_name MODIFY column_name VARCHAR(100) CHARACTER SET utf8mb4;

your_database_name: 数据库名

your_table_name: 表名

column_name: 字段名。

这些语句将确保数据库、表和字段的编码方式都设置为 UTF-8。

5. 编码集推荐:

一般推荐选择以下几种常用的字符编码集:按需求进行选择

  • utf8mb4: 如果需要支持包括 emoji 在内的所有 Unicode 字符,或者需要存储多语言文本,可以选择 utf8mb4 编码。

  • utf8: 如果不需要存储 emoji 或者特殊的 Unicode 字符,但仍然需要支持多语言文本,可以选择 utf8 编码。需要注意的是,在 MySQL 8.0 及以上版本,utf8 默认使用了 utf8mb4 的字符集,因此实际上建议直接使用 utf8mb4

  • latin1: 如果只需要存储西欧语言的文本,且对存储空间有较高要求,可以选择 latin1 编码。不过需要注意,latin1 编码不支持 Unicode 字符。

相关推荐
睡觉的时候不会困5 小时前
Redis 主从复制详解:原理、配置与主从切换实战
数据库·redis·bootstrap
程序员的世界你不懂7 小时前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库
自学也学好编程7 小时前
【数据库】Redis详解:内存数据库与缓存之王
数据库·redis
福赖7 小时前
《MySQL基础——用户管理》
mysql·用户管理
JAVA不会写8 小时前
在Mybatis plus中如何使用自定义Sql
数据库·sql
IT 小阿姨(数据库)8 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
ChinaRainbowSea8 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
小马学嵌入式~9 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
Java小白程序员9 小时前
MyBatis基础到高级实践:全方位指南(中)
数据库·mybatis
Monly219 小时前
人大金仓:merge sql error, dbType null, druid-1.2.20
数据库·sql