Введение в модель данных SQL

Теперь предположим, что при увольнении


Пример 17.10.

(html, txt)

Теперь предположим, что при увольнении служащего (удалении строки из таблицы EMP) мы хотим не только должным образом модифицировать таблицу DEPT, но и сохранять (с целью аудита) данные об уволенном сотруднике в таблице EMP_DISMISSED4):

EMP_DISMISSED:
EMP_NO : EMP_NO
EMP_NAME : VARCHAR
DEPT_NO : DEPT_NO
Определение соответствующего триггера могло бы выглядеть следующим образом (пример 17.11):

CREATE TRIGGER EMP_DISMISSION AFTER DELETE ON EMP FOR EACH ROW BEGIN ATOMIC INSERT INTO EMP_DISMISSED ROW (EMP.EMP_NO, EMP.EMP_NAME, EMP.DEPT_NO); UPDATE DEPT SET DEPT_EMP_NO = DEPT_EMP_NO - 1, DEPT_TOTAL_SAL = DEPT_TOTAL_SAL - EMP_SAL WHERE DEPT.DEPT_NO = EMP.DEPT_NO END;

Пример 17.11.

(html, txt)


Содержание  Назад  Вперед