为通用字符选择表排序规则

2024-05-11

我正在开发一个需要存储通用字符的后端。

我选择了utf8mb4用于此目的的表编码。我还必须选择表格排序规则。

最直接的选择是选择utf8mb4_general_ci表整理。除了一般的排序规则之外,还有大约20种其他排序规则可供选择。更具体的排序规则的用途是什么?做utf8mb4_general_ci或者可能utf8mb4_unicode520_ci涵盖所有这些?如果我想存储从中文一直到阿拉伯文的字符,我应该使用哪一个。


  • ...general_ci很简单。它并不将 2 个字符的组合(例如使用非空格标记)与等效的单字符组合等同起来。

  • ...unicode_520_ci来自 Unicode 版本 5.20,这是 MySQL 采用它时可用的最新版本。它可以处理诸如订购表情符号之类的事情,而以前的版本没有这些功能。

  • 对于 MySQL 8.0,首选排序规则是utf8mb4_0900_ai_ci,基于 Unicode 9.0。

  • ...<language>_ci处理给定语言中发现的变体。例如,应该ch and ll在西班牙语中被视为“字母”并在之间排序cz and d, and lz and m.

  • 对于一般用途,请勿使用...general_ci,使用源自 Unicode 的最新版本。对于特定于语言的情况,请选择其他排序规则之一。

  • 我确实知道中文和阿拉伯语在不同的排序规则中如何(甚至是否)以不同的方式排序。然而,我看到...persion_ci,所以我怀疑有问题。

  • Do use utf8mb4, not utf8,特别是因为你需要中文。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为通用字符选择表排序规则 的相关文章

  • 如何使用php在mysql数据库中添加照片? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我对 PH
  • MySQL 中布尔值的 TINYINT 与 ENUM(0, 1)

    MyISAM 表和 MySQL 5 1 中具有 0 和 1 值的 Tinyint 或 ENUM 0 1 哪个更好 您可以使用BIT 1 如中提到的MySQL 5 1 参考 http dev mysql com doc refman 5 1
  • SQL Server默认字符编码

    默认情况下 Microsoft SQL Server 中数据库的字符编码集是什么 如何查看 SQL Server 中当前的字符编码 编码 In most cases SQL Server stores Unicode data i e th
  • MySQL 正在将我的时间戳值转换为 0000-00-00

    我是 PHP 新手 目前仍在学习中 我认为我的注册表有问题 username password email全部成功插入MySQL registered and last seen不要 我以为我正在使用getTimestamp 错了 但它呼应
  • 根据最大值连接表

    这是我正在谈论的内容的一个简化示例 Table students exam results id name id student id score date 1 Jim 1 1 73 8 1 09 2 Joe 2 1 67 9 2 09 3
  • mod_rewrite, .htaccess 连接mysql数据库

    我希望 htaccess 文件中的 mod rewrite 链接到 mysql 数据库以向我提供映射信息 具体来说 我使用单个代码库来托管多个站点 因此 如果用户请求图像 例如 http www example com images car
  • 从 MySQL 将 500 万行加载到 Pandas 中

    我在 本地 网络上的 MySQL 数据库中有 500 万行 连接速度非常快 而不是在互联网上 与数据库的连接工作正常 但如果我尝试这样做 f pd read sql query SELECT FROM mytable engine inde
  • 使用 php 和 mysql 计算日期差(以小时为单位)

    我如何使用 php 和 mysql 找到以小时为单位的日期差异 Use TIMEDIFF http dev mysql com doc refman 5 1 en date and time functions html function
  • MySQL通过UPDATE/DELETE合并重复数据记录

    我有一个看起来像这样的表 mysql gt SELECT FROM Colors ID USERNAME RED GREEN YELLOW BLUE ORANGE PURPLE 1 joe 1 null 1 null null null 2
  • 如何在php/mysql中使用事务

    我正在使用 php mysql 我知道 mysql 中的事务 但不能在我的脚本中使用 下面是我的脚本 如何在我的代码中使用 php 事务 即 BEGIN ROLLBACK COMMIT foreach json a shop as json
  • 条件对列表的 In 子句

    有一个表 我需要通过在配对值列表中应用和条件来获取分页记录 下面是解释 假设我有一堂课Billoflading其中有各个领域 表中两个重要字段是 tenant billtype 我有一个包含值的对列表 tenant1 billtype1 t
  • MySQL - 查找接近的匹配项

    MySQL 有没有办法在文本字段中找到紧密匹配的内容 说找到 email protected cdn cgi l email protection当搜索时 email protected cdn cgi l email protection
  • 在 Python 中,如果我有 unix 时间戳,如何将其插入 MySQL 日期时间字段?

    我正在使用 Python MySQLDB 我想将其插入 Mysql 中的 DATETIME 字段 我该如何使用cursor execute 来做到这一点 要将 UNIX 时间戳转换为 Python 日期时间对象 请使用datetime fr
  • 在 SQL 中如何获得整数的最大值?

    我试图从 MySQL 数据库中找出整数 有符号或无符号 的最大值 有没有办法从数据库本身提取这些信息 是否有我可以使用的内置常量或函数 标准 SQL 或 MySQL 特定的 At http dev mysql com doc refman
  • 了解 SQL Server 排序规则中的 Unicode 和代码页

    为什么所有 SQL Server 2008 R2 排序规则都与代码页相关联 所有排序规则都是 unicode 吗 当您的数据库被使用不同代码页的多种语言使用时 如何选择排序规则 谢谢 CHAR 与 NCHAR 即非 Unicode 与 Un
  • Laravel 读写连接不同步

    我在 Laravel 5 2 应用程序中使用读写 MySQL 连接设置 mysql gt write gt host gt env DB HOST WRITE localhost read gt host gt env DB HOST RE
  • 蟒蛇 | MySQL | AttributeError:模块“mysql.connector”没有属性“connect”

    我正在学习 python 中的一个新库 mysql 我尝试执行以下命令 import mysql connector mydb mysql connector connect host localhost user root passwd
  • 将非常大的Python列表输出保存到mysql表中

    我想将 python 生成的列表的输出保存在 mysql 数据库的表中 该表如下所示 mysql 中的 myapc8 表 https i stack imgur com 4B4Hz png这是Python代码 在此输入图像描述 https
  • MySQL 两种日期格式之间的转换

    用户将以这种格式输入日期 2017 年 2 月 17 日 存储在 mysql 数据库中的日期格式如下 2015 02 17 00 00 00 我想做的是 SELECT FROM insurance where DATE FORMAT in
  • 批处理文件并与数据库比较

    目前我正在开发一个 Spring Boot 应用程序 该应用程序定期尝试处理包含用户数据的文件 其中每行都包含userId and departamentId隔开 例如123534 13 该文件将包含数百万条记录 我的要求是以这样的方式将此

随机推荐