Глава 3. Основные операции с таблицами
области существуют такие понятия, как код самолета и номер места, и эти понятия
используются на практике.
В этой таблице используется
внешний ключ. Предложение FOREIGN KEY создает
ограничение ссылочной целостности. В качестве внешнего ключа служит атрибут
«Код самолета» (aircraft_code). Он ссылается на одноименный атрибут в табли-
це «Самолеты» (aircrafts). Таблица «Места» называется ссылающейся (referencing),
а таблица «Самолеты» — ссылочной (referenced).
Поскольку номера мест привязаны к модели самолета, то в случае удаления из таб-
лицы «Самолеты» какой-либо строки с конкретным кодом самолета необходимо уда-
лить также и из таблицы «Места» все строки, в которых значение атрибута «Код са-
молета» такое же. Коротко говоря, если в базе данных нет информации о какой-либо
модели самолета, то не может быть и информации о компоновке салона, т. е. о рас-
пределении мест по классам обслуживания для этой модели.
Поэтому в предложении для определения внешнего ключа появляется важное допол-
нение: ON DELETE CASCADE. Это означает, что при удалении какой-либо строки из
таблицы «Самолеты» удаление строк из таблицы «Места», связанных с этой строкой
по внешнему ключу, берет на себя СУБД, избавляя программиста от этой заботы. По-
добные действия, которые выполняет сама СУБД, называются каскадным удалением.
Таким образом, внешний ключ служит для связи таблиц между собой.
Итак, команда для создания нашей второй таблицы «Места» такова:
Достарыңызбен бөлісу: