Напишите триггеры для базы данных кораблей.
1. Напишите два триггера для аудита таблицы Classes: триггер уровня строки и операторный триггер. Триггер срабатывает при каждом изменении таблицы Classes и записывает в таблицу аудита время изменения и имя сработавшего триггера.
2. Напишите триггер, проверяющий ссылочную целостность данных При удалении кортежа с данными о классе корабля из таблицы Classes следует удалить соответствующий кортеж из таблицы Ships, который на него ссылается.
3. Напишите триггер для аудита таблицы Ships. Триггер уровня строки срабатывает при каждом изменении таблицы Ships, он записывает в таблицу аудита имя пользователя, время выполнения изменения, имя сработавшего триггера и историю изменения (старые и новые кортежи).
4. Напишите when-триггер, который позволяет записывать в отдельную таблицу данные о вводимых в таблицу Ships новых кораблях, спущенных на воду после 1944 года.
Напишите триггеры для базы данных компьютеров.
1. Напишите два триггера для аудита таблицы PC: триггер уровня строки и операторный триггер. Триггер срабатывает при каждом изменении таблицы PC и записывает в таблицу аудита время изменения и имя сработавшего триггера.
2. Напишите триггер, проверяющий ссылочную целостность данных. При удалении кортежа с данными о производителе из таблицы Products следует удалить соответствующий кортеж из таблицы PC, который ссылается на удаленного производителя.
3. Напишите триггер для аудита таблицы Laptops. Триггер уровня строки срабатывает при каждом изменении таблицы Laptops, он записывает в таблицу аудита имя пользователя, время выполнения изменения, имя сработавшего триггера и историю изменения (старые и новые кортежи).
4. Напишите when-триггер, который позволяет записывать в отдельную таблицу данные о вводимых в таблицу Laptops новых лаптопах, имеющих объем оперативной памяти выше 2000 Гбайт.
Приложение 1
База данных спектаклей