Связь и для чего она нужна
Допустим, у нас есть две таблицы: одна для сотрудников, другая — про их оклады. Как нам их связать?

Ключ — это атрибут или группа атрибутов, на основании которых определяются все значения в строке.
Ключи нужны для связи двух и более таблиц воедино.
Связь — это объединение таблиц при помощи объединения записей.
Виды ключей:
- Первичный, Primary key, все значения должны быть уникальными в ключе
- Вторичный, Foreign key, значения могут повторяться и повторять любой ключ
Разновидности связи ключей:
- ✔️ PK-FK
- ✔️FK-PK
- ✔️ FK-FK
- ❌ PK-PK
PK-PK не может быть, так как они должны быть уникальны, а значит одинаковых значений быть не может между ними.
В том примере, в качестве первичного ключа выступает ID в таблице сотрудников, а в таблице оклада, ID это вторичный ключ, который ссылается на значения из Сотрудников
То есть Сотрудник под первым номером будет соединён с первой ЗП
(так как Сотрудник.ID=1 -> Оклад.ID=1 это одинаковые значения,
по которым записи можно соединить)

Также, ключи можно связывать в более длинные цепочки:
- ✔️ FK-PK-FK-FK
- ✔️ FK-FK-FK-FK
- ❌ PK-FK-PK
Виды связей: (столбцов) с используемыми обозначениями
- 1 к 1

- 1 к многим

- Многие ко многим

Можно использовать любой из трех способов для изображения связи, самое главное — постоянство!
Разновидности связей:
- Постоянная
- Временная