Учебно-практическое пособие москва 2017 ббк



Pdf көрінісі
бет103/243
Дата21.07.2022
өлшемі3,05 Mb.
#147663
түріУчебно-практическое пособие
1   ...   99   100   101   102   103   104   105   106   ...   243
Байланысты:
Язык SQL. Базовый курс

CREATE TABLE flights
( ...
CHECK ( actual_arrival IS NULL OR
( actual_departure IS NOT NULL AND
actual_arrival IS NOT NULL AND
actual_arrival > actual_departure
)
),
...
Проверьте ваши предположения на практике. Для этого сначала удалите суще-
ствующее ограничение с помощью команды
ALTER TABLE flights DROP CONSTRAINT имя_ограничения;
Как определить имя этого ограничения? С помощью команды
\d flights
получите описание таблицы flights, а в нем есть названия всех ограничений.
Затем создайте это же ограничение, но в модифицированном виде:
ALTER TABLE flights
ADD CHECK ( actual_arrival IS NULL OR
( actual_departure IS NOT NULL AND
actual_arrival > actual_departure
)
);
Попробуйте добавить в таблицу flights две-три строки, подбирая такие значе-
ния атрибутов actual_departure и actual_arrival, чтобы проверить все возможные
исходы этих проверок. Конечно, вместо добавления новых строк можно моди-
фицировать одну и ту же строку с помощью команды UPDATE.
12. Команда ALTER TABLE позволяет переименовать таблицу. Например:
ALTER TABLE table_name RENAME TO new_table_name;
Поскольку в командах создания таблиц базы данных «Авиаперевозки» мы не
указывали имена ограничений для первичных и внешних ключей, то их имена
были сформированы автоматически самой СУБД. Как вы думаете, получили ли
эти ограничения новые имена после переименования таблицы?
Проверьте ваши предположения, выполнив такую операцию с одной из таблиц
базы данных «Авиаперевозки», имеющих внешние ключи.
106


13. Представление «Рейсы» (flights_v) и материализованное представление «Марш-
руты» (routes) построены на основе таблиц «Рейсы» (flights) и «Аэропорты»
(airports). Логично предположить, что при каскадном удалении, например, таб-
лицы «Аэропорты», представление «Рейсы» будет также удалено, поскольку при
удалении базовой таблицы этому представлению просто неоткуда будет брать
данные. А что вы можете предположить насчет материализованного представ-
ления «Маршруты»: будет ли оно также удалено или нет? Ведь оно уже
содержит
данные, в отличие от обычного представления. Так ли, условно говоря, сильна
его связь с таблицами, на основе которых оно сконструировано?
Проведите необходимые эксперименты, начав с команды


Достарыңызбен бөлісу:
1   ...   99   100   101   102   103   104   105   106   ...   243




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет