Spec-Zone.ru › MySQL 8.4

12.3.4 Таблица набора символов и сортировки

Каждая таблица имеет набор символов таблицы и сортировку таблицы. У CREATE TABLE и ALTER TABLE есть необязательные предложения для указания набора символов и сортировки таблицы:

CREATE TABLE tbl_name (column_list)
    [[DEFAULT] CHARACTER SET charset_name]
    [COLLATE collation_name]]

ALTER TABLE tbl_name
    [[DEFAULT] CHARACTER SET charset_name]
    [COLLATE collation_name]

Пример:

CREATE TABLE t1 ( ... )
CHARACTER SET latin1 COLLATE latin1_danish_ci;

MySQL выбирает набор символов и сортировку таблицы следующим образом:

  • Если указаны как набор символов CHARACTER SET charset_name, так и сортировка COLLATE collation_name, используются набор символов charset_name и сортировка collation_name.

  • Если указан набор символов CHARACTER SET charset_name без сортировки COLLATE, используется набор символов charset_name и его значение по умолчанию для сортировки. Для просмотра значений сортировки по умолчанию для каждого набора символов используйте оператор SHOW CHARACTER SET или запросите данные из таблицы INFORMATION_SCHEMA CHARACTER_SETS.

  • Если указан набор символов COLLATE collation_name без сортировки CHARACTER SET, используются набор символов, связанный с collation_name, и сортировка collation_name.

  • В противном случае (не указаны ни набор символов CHARACTER SET, ни сортировка COLLATE), используются набор символов и сортировка базы данных.

Набор символов и сортировка таблицы используются в качестве значений по умолчанию для определений столбцов, если набор символов и сортировка столбца не указаны в отдельных определениях столбцов. Набор символов и сортировка таблицы — это расширения MySQL; в стандартном SQL такого нет.

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

Spec-Zone.ru

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