CREATE COLLATION
CREATE COLLATION — создать правило сортировки
Синтаксис
CREATE COLLATIONимя
( [ LOCALE =локаль
, ] [ LC_COLLATE =категория_сортировки
, ] [ LC_CTYPE =категория_типов_символов
] ) CREATE COLLATIONимя
FROMсуществующее_правило
Описание
CREATE COLLATION
определяет новое правило сортировки, используя параметры локали операционной системы, либо копируя существующее правило.
Чтобы создать правило сортировки, необходимо иметь право CREATE
в целевой схеме.
Параметры
имя
Имя правила сортировки, возможно, дополненное схемой. Если схема не указана, правило сортировки создаётся в текущей схеме. Заданное имя правила должно быть уникальным в этой схеме. (Системные каталоги могут содержать правила сортировки с одним именем, но предназначенные для разных кодировок, однако они будут игнорироваться, если их кодировка не совпадает с кодировкой базы данных.)
локаль
Это краткая запись для одновременной установки
LC_COLLATE
иLC_CTYPE
. Если указан этот вариант, задать любой из этих параметров отдельно нельзя.категория_сортировки
Указанная локаль операционной системы устанавливается в качестве категории локали
LC_COLLATE
. Эта локаль должна быть применимой к кодировке текущей базы данных. (Точные правила описаны в CREATE DATABASE.)категория_типов_символов
Указанная локаль операционной системы устанавливается в качестве категории локали
LC_CTYPE
. Эта локаль должна быть применимой к кодировке текущей базы данных. (Точные правила описаны в CREATE DATABASE.)существующее_правило
Имя копируемого существующего правила сортировки. Новое правило сортировки получит те же свойства, что и существующее, но будет независимым объектом.
Замечания
Для удаления созданных пользователем правил сортировки применяется команда DROP COLLATION
.
Дополнительные сведения о поддержке правил сортировки можно найти в Разделе 22.2.
Примеры
Создание правила сортировки из локали операционной системы fr_FR.utf8
(предполагается, что кодировка текущей базы данных — UTF8
):
CREATE COLLATION french (LOCALE = 'fr_FR.utf8');
Создание правила сортировки из уже существующего:
CREATE COLLATION german FROM "de_DE";
Иногда удобно использовать в приложениях имена правил сортировки, не зависящие от операционной системы.
Совместимость
Оператор CREATE COLLATION
определён в стандарте SQL, но его действие ограничено копированием существующего правила сортировки. Синтаксис создания нового правила сортировки представляет собой расширение Postgres Pro.