shachenkovan / practica

0 stars 0 forks source link

Написать триггеры #9

Open shachenkovan opened 10 months ago

shachenkovan commented 10 months ago
shachenkovan commented 10 months ago

Триггер на добавление новых сотрудников. DELIMITER $$ CREATE TRIGGER sotrudnik_ins AFTER INSERT ON sotrudnik FOR EACH ROW BEGIN IF NEW.imja = '' OR NEW.fam = '' OR NEW.otch = '' OR NEW.login = '' OR NEW.password = '' THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Заполните все поля'; END IF; END$$

Триггер на изменение данных о сотруднике. DELIMITER $$ CREATE TRIGGER sotrudnik_upd AFTER UPDATE ON sotrudnik FOR EACH ROW BEGIN IF NEW.imja = '' OR NEW.fam = '' OR NEW.otch = '' OR NEW.login = '' OR NEW.password = '' THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Заполните все поля'; END IF; END$$

Триггер на удаление последней записи в таблице о сотрудниках. DELIMITER $$ CREATE TRIGGER sotrudnik_del AFTER DELETE ON sotrudnik FOR EACH ROW BEGIN IF NOT EXISTS (SELECT * FROM sotrudnik) THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Таблица не может быть без записей'; END IF; END$$