服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - 教你如何在 MySQL 数据库中支持完整的Unicode

教你如何在 MySQL 数据库中支持完整的Unicode

2023-05-31 14:57火焰兔 Mysql

UTF-8 是一种可变宽度编码,它使用一到四个 8 位字节对每个符号进行编码,永远不要在MySQL中使用 utf8——总是使用 utf8mb4,对mysql支持 Unicode相关知识感兴趣的朋友一起看看吧

在你的数据库中使用 MySQL 的 utf8 字符集吗? 在这篇文章中,我将解释为什么你应该改用 utf8mb4,以及如何去做。

UTF-8

UTF-8编码可以表示Unicode字符集中的每一个符号,范围从到。 那是 1,114,112 个可能的符号。 (并非所有这些 Unicode 代码点都已分配字符,但这并不妨碍 UTF-8 能够对它们进行编码。)

UTF-8 是一种可变宽度编码;可以参考Unicode 字符集和 UTF-8、UTF-16、UTF-32 编码这篇文章 它使用一到四个 8 位字节对每个符号进行编码。 具有较低数字代码点值的符号使用较少的字节进行编码。 这样,UTF-8 针对使用 ASCII 字符和其他 BMP 符号(其代码点范围从 到 )的常见情况进行了优化——同时仍然允许星体符号(其代码点范围从 到 ) 被存储。

MySQL 中的 utf8

很长一段时间,我一直在为数据库、表和列使用 MySQL 的 utf8 字符集,假设它映射到上述 UTF-8 编码。 通过使用 utf8,我可以在我的数据库中存储我想要的任何符号——或者我是这么认为的。

在写 JavaScript 的内部字符编码时,我注意到无法将 符号插入到该站点后面的 MySQL 数据库中。 我尝试更新的列具有 排序规则,并且连接字符集设置为 utf8。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
mysql> SET NAMES utf8; # just to emphasize that the connection charset is set to `utf8`
Query OK, 0 rows affected (0.00 sec)
 
mysql> UPDATE database_name.table_name SET column_name = 'foo

延伸 · 阅读

精彩推荐
  • MysqlMySQL8.0.26的安装与简化教程(全网最全)

    MySQL8.0.26的安装与简化教程(全网最全)

    MySQL关是一种关系数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用的标准化语言,今天通过本文给大家分享MySQL8.0.26的安装与简化教程使全网...

    4块5的男神7802021-09-02
  • MysqlMysql百万级分页优化技巧

    Mysql百万级分页优化技巧

    这篇文章主要介绍了Mysql百万级分页优化技巧,包括普通分页和优化分页两种,在数据量比较大的时候,我们尽量去利用索引来优化语句。下面通过本文给...

    mysql教程网3762020-07-08
  • Mysql基于SQL中的数据查询语句汇总

    基于SQL中的数据查询语句汇总

    以下是对SQL中的数据查询语句进行了汇总介绍,需要的朋友可以过来参考下 ...

    MYSQL教程网3032020-01-07
  • Mysql经典mysql连接查询例题

    经典mysql连接查询例题

    本文通过一个有趣的例子向我们介绍了mysql连接查询,采用了子查询和连接查询混合和多次连接查询,需要的朋友可以参考下 ...

    H&K3652020-05-15
  • MysqlMySQL中把varchar类型转为date类型方法详解

    MySQL中把varchar类型转为date类型方法详解

    这篇文章主要介绍了MySQL中把varchar类型转为date类型方法详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 ...

    D蓝叶17112020-06-16
  • MysqlMYSQL开发性能研究之批量插入数据的优化方法

    MYSQL开发性能研究之批量插入数据的优化方法

    在网上也看到过另外的几种方法,比如说预处理SQL,比如说批量提交。那么这些方法的性能到底如何?本文就会对这些方法做一个比较 ...

    Aicrosoft Studio3682020-08-03
  • MysqlMySQL的InnoDB扩容及ibdata1文件瘦身方案完全解析

    MySQL的InnoDB扩容及ibdata1文件瘦身方案完全解析

    在使用InnoDB存储引擎后,MySQL的ibdata1文件常常会占据大量存储空间,这里我们就为大家带来MySQL的InnoDB扩容及ibdata1文件瘦身方案完全解析:...

    zm27142602020-06-15
  • Mysqlmysql 操作总结 INSERT和REPLACE

    mysql 操作总结 INSERT和REPLACE

    用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的SELECT语句,另外一种就是更新语句,也叫做数据操作语句。 ...

    mysql教程网1942019-10-31