Spec-Zone.ru › MySQL 5.7

10.3.1 Правила именования сортировок

Имена сортировок MySQL следуют этим правилам:

  • Имя сортировки начинается с имени набора символов, с которым она связана, за которым обычно следуют один или несколько суффиксов, указывающих другие характеристики сортировки. Например, utf8_general_ci и latin1_swedish_ci являются сортировками для наборов символов utf8 и latin1 соответственно. У набора символов binary есть одна сортировка, также имеющая имя binary, без суффиксов.

  • Языковая сортировка включает имя языка. Например, utf8_turkish_ci и utf8_hungarian_ci сортируют символы для набора символов utf8 по правилам турецкого и венгерского языков соответственно.

  • Суффиксы сортировки указывают, является ли сортировка регистрозависимой, чувствительной к ударениям или чувствительной к кане (или какой-либо комбинации), или двоичной. В следующей таблице показаны суффиксы, используемые для обозначения этих характеристик.

    Таблица 10.1 Значения суффиксов сортировки

    Таблица 10.1 Значения суффиксов сортировки
    Суффикс Значение
    _ai Нечувствительная к ударениям
    _as Чувствительная к ударениям
    _ci Нечувствительная к регистру
    _cs Чувствительная к регистру
    _bin Двоичная

    Для недвоичных имён сортировок, не указывающих чувствительность к ударениям, это определяется по чувствительности к регистру. Если имя сортировки не содержит _ai или _as, то _ci в имени подразумевает _ai, а _cs в имени подразумевает _as. Например, latin1_general_ci явно нечувствительна к регистру и неявно нечувствительна к ударениям, а latin1_general_cs явно чувствительна к регистру и неявно чувствительна к ударениям.

    Для сортировки binary набора символов binary сравнения основаны на числовых значениях байтов. Для сортировки _bin набора символов, не являющегося двоичным, сравнения основаны на числовых значениях кодов символов, которые отличаются от значений байтов для многобайтовых символов. Подробную информацию о различиях между сортировкой binary набора символов binary и сортировками _bin наборов символов, не являющихся двоичными, см. в разделе 10.8.5 «Двоичная сортировка по сравнению с _bin сортировками».

  • Имена сортировок для наборов символов Unicode могут включать номер версии, чтобы указать версию алгоритма сортировки Unicode (UCA), на котором основана сортировка. Сортировки, основанные на UCA, без номера версии в имени, используют ключи весов UCA версии 4.0.0. Например:

    • utf8_unicode_520_ci основана на ключах весов UCA 5.2.0 (http://www.unicode.org/Public/UCA/5.2.0/allkeys.txt).

    • utf8_unicode_ci (без указания версии) основана на ключах весов UCA 4.0.0 (http://www.unicode.org/Public/UCA/4.0.0/allkeys-4.0.0.txt).

  • Для наборов символов Unicode сортировки xxx_general_mysql500_ci сохраняют порядок сортировки, установленный до версии 5.1.24, из исходных сортировок xxx_general_ci, и позволяют обновлять таблицы, созданные до MySQL 5.1.24 (Ошибка #27877).

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/charset-collation-names.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API