11.6. Уникальные индексы#
11.6. Уникальные индексы
Индексы также могут использоваться для обеспечения уникальности значения столбца или уникальности комбинированных значений более чем одного столбца.
CREATE UNIQUE INDEXname
ONtable
(column
[, ...]) [NULLS [ NOT ] DISTINCT];
В настоящее время только индексы B-дерева могут быть объявлены уникальными.
Когда индекс объявлен уникальным, не допускается наличие нескольких строк таблицы с одинаковыми индексированными значениями. По умолчанию, null значения в уникальной колонке не считаются равными, что позволяет иметь несколько null в колонке. Опция NULLS NOT DISTINCT
изменяет это и заставляет индекс рассматривать null как равные. Уникальный индекс из нескольких столбцов будет отклонять только те случаи, когда все индексированные столбцы равны в нескольких строках.
Tantor SE-1С автоматически создает уникальный индекс, когда для таблицы определено ограничение уникальности или первичный ключ. Индекс охватывает столбцы, составляющие первичный ключ или ограничение уникальности (мультиколоночный индекс, если это уместно), и является механизмом, который обеспечивает соблюдение ограничения.
Примечание
Не нужно создавать индексы на уникальных столбцах вручную; это просто дублирование автоматически созданного индекса.