Ограничения
Существуют четыре вида ограничений:
-
первичный ключ (
PRIMARY KEY
); -
уникальный ключ (
UNIQUE
); -
внешний ключ (
REFERENCES
илиFOREIGN KEY
); -
проверочное ограничение (
CHECK
).
Ограничения могут быть указаны на уровне столбца (“ограничения столбцов”) или на уровне таблицы (“табличные ограничения”).Ограничения уровня таблицы необходимы, когда ключи (ограничение уникальности, первичный ключ или внешний ключ) должны быть сформированы по нескольким столбцам, или, когда ограничение CHECK
включает несколько столбцов, т.е.действует на уровне записи.Синтаксис для некоторых типов ограничений может незначительно отличаться в зависимости от того определяется ограничение на уровне столбца или на уровне таблицы.
-
Ограничение на уровне столбца указывается после определения других характеристик столбца. Оно может включать только столбец указанный в этом определении.
-
Ограничения на уровне таблицы указываются после определений всех столбцов. Ограничения таблицы являются более универсальным способом записи ограничений, поскольку позволяют ограничение более чем для одного столбца таблицы.
-
Вы можете смешивать ограничения столбцов и ограничения таблиц в одном операторе
CREATE TABLE
.
Системой автоматически создаётся индекс для первичного ключа (PRIMARY KEY
), уникального ключа (UNIQUE KEY
) и внешнего ключа (REFERENCES
для ограничения уровня столбца, и FOREIGN KEY REFERENCES
для ограничения уровня таблицы).