FOREIGN в Oracle SQL. Введение
В реляционных базах данных важно обеспечивать целостность данных, особенно при работе с таблицами, связанными между собой. Ключевую роль в этом играет оператор FOREIGN, который используется для создания внешних ключей (foreign key) — ограничений, указывающих на связь между столбцами разных таблиц.
С его помощью можно:
привязать одну таблицу к другой
запретить удаление или изменение родительских записей
гарантировать согласованность ссылок
🔤 Написание
Можно указывать внутри CREATE TABLE или с помощью ALTER TABLE.
🔄 Где используется
При моделировании связей «один ко многим»
Для обеспечения целостности между заказами и пользователями, заказами и товарами
В ER-моделировании
При миграциях и импорте данных
Для запрета «висячих ссылок»
🧪 10 Примеров использования
1️⃣ Создание таблицы со внешним ключом
2️⃣ Добавление внешнего ключа через ALTER TABLE
3️⃣ FOREIGN KEY без имени — будет сгенерировано автоматически
4️⃣ Множественные внешние ключи в таблице
5️⃣ Внешний ключ с ON DELETE CASCADE
6️⃣ Попытка удалить родителя с зависимыми строками — ошибка
7️⃣ Использование FOREIGN в ER-диаграммах
Схемы визуализируют внешние ключи стрелками от дочерней к родительской таблице.
8️⃣ FOREIGN с составным ключом
9️⃣ Проверка внешних ключей в метаданных
🔟 Удаление внешнего ключа
🧩 Заключение
FOREIGN — один из важнейших инструментов поддержания связности и надёжности данных в Oracle SQL. Он позволяет контролировать логические связи и избегать «потерянных» или «висячих» записей.
💡 Запомни:
FOREIGN KEY ссылается на первичный или уникальный ключ
Можно использовать
ON DELETE CASCADEдля автoудаленияВнешний ключ может быть одиночным или составным
Обязательно создаётся индекс на родительский столбец
🔜 Следующая статья:
FOR в Oracle SQL — как управлять циклами и итерациями в PL/SQL