[1] Внешние ключи — это определенный тип ограничения, который используется для создания связи между двумя таблицами. Он указывает, что значение определённого столбца (или группы столбцов) в одной таблице должно соответствовать значению первичного ключа в другой таблице.
Это позволяет:
-
Сохранять целостность данных: если вы попытаетесь добавить значение во внешнем ключе, которое не существует в родительской таблице, это вызовет ошибку.
-
Обеспечивать каскадное обновление и удаление: можно задать, что при удалении записи из родительской таблицы автоматически удаляются все дочерние записи, которые ссылаются на него.
[2] Ограничения (constraints) — это правила, которые задаются на уровне таблиц в базе данных для обеспечения корректности и целостности данных. Они помогают предотвратить ввод некорректных данных в таблицы. Типы ограничений включают:
-
PRIMARY KEY (первичный ключ): обозначает уникальный идентификатор записи в таблице. Каждая таблица может иметь только один первичный ключ.
-
FOREIGN KEY (внешний ключ): устанавливает связь между двумя таблицами, указывая, что значение в одном столбце должно соответствовать значению в столбце другой таблицы.
-
UNIQUE: обеспечивает уникальность значений в столбце, позволяя хранить только уникальные записи.
-
NOT NULL: гарантирует, что в столбце не может быть NULL значений.
-
CHECK: позволяет задать условие, которому должны соответствовать значения в столбце.