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



Pdf көрінісі
бет73/243
Дата21.07.2022
өлшемі3,05 Mb.
#147663
түріУчебно-практическое пособие
1   ...   69   70   71   72   73   74   75   76   ...   243
Байланысты:
Язык SQL. Базовый курс

CREATE TABLE progress
( record_book numeric( 5 ),
...
FOREIGN KEY ( record_book )
REFERENCES students ( record_book )
ON DELETE SET NULL
);
4. Присваивание атрибутам внешнего ключа в строках таблицы «Успеваемость»
(progress) значения DEFAULT, если оно, конечно, было предписано при созда-
нии таблицы. Оформляется этот вариант так (значение во фразе DEFAULT взято
произвольное):
CREATE TABLE progress
( record_book numeric( 5 ) DEFAULT 12345,
...
FOREIGN KEY ( record_book )
REFERENCES students ( record_book )
ON DELETE SET DEFAULT
);
Важно учитывать, что если в ссылочной таблице нет строки с тем же значением
ключевого атрибута, которое было предписано во фразе DEFAULT при создании
ссылающейся таблицы, то будет иметь место нарушение ограничения ссылоч-
ной целостности и операция удаления не будет выполнена.
При выполнении операции UPDATE используются эти же варианты подходов по
отношению к обеспечению ссылочной целостности. Аналогом каскадного уда-
ления является каскадное обновление:
77


CREATE TABLE progress
( record_book numeric( 5 ),
...
FOREIGN KEY ( record_book )
REFERENCES students ( record_book )
ON UPDATE CASCADE
);
В этом случае измененные значения ссылочных атрибутов копируются в
ссылающиеся строки ссылающейся таблицы, т. е. новое значение атрибута
record_book из строки таблицы «Студенты» будет скопировано во все строки таб-
лицы «Успеваемость», ссылающиеся на обновленную строку.
После рассмотрения всех видов ограничений целостности базы данных мы можем
привести окончательные определения таблиц «Студенты» и «Успеваемость». Окон-
чательными они являются лишь в том смысле, что именно их нужно брать за основу
при выполнении заданий, приведенных в конце главы. Эти определения ни в коем
случае не являются идеальными, эталонными. Выполняя задания, вы это увидите са-
ми.
Прежде чем создавать таблицы, создайте базу данных edu:


Достарыңызбен бөлісу:
1   ...   69   70   71   72   73   74   75   76   ...   243




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

    Басты бет