Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Что делает этот sql запрос

Денис Черемных Гуру (2837), на голосовании 4 месяца назад
ВТОРОЙ ЗАПРОС
Голосование за лучший ответ
damn Просветленный (47322) 5 месяцев назад
Второй SQL-запрос создает триггер с именем tr_InsertTeacher в таблице Teacher. Триггер срабатывает при вставке новой записи в таблицу Teacher.
INSERT INTO Department (dep_name) VALUES ('Не определен');: Вставляет новую запись в таблицу Department. В поле dep_name (название департамента) вставляется значение «Не определен».
Т. е. при каждой вставке новой записи о преподавателе (Teacher) в базу данных этот триггер будет автоматически добавлять новую запись в таблицу Department с названием «Не определен».
Анонимус Мудрец (14718) 5 месяцев назад
1. Триггер tr_DeleteStudent:
  • CREATE TRIGGER tr_DeleteStudent: Создает триггер с именем tr_DeleteStudent.
  • ON Groupa: Триггер срабатывает при выполнении операций с таблицей Groupa.
  • FOR DELETE: Триггер срабатывает только при удалении строк из таблицы Groupa.
  • BEGIN...END: Блок кода, который выполняется при срабатывании триггера.
  • DELETE FROM WorkloadLog WHERE group_id = DELETED.group_id;: Удаляет записи из таблицы WorkloadLog, где значение group_id совпадает с удаленной строкой из таблицы Groupa. DELETED - это псевдотаблица, которая хранит данные удаленной строки.

2. Триггер tr_InsertTeacher:
  • CREATE TRIGGER tr_InsertTeacher: Создает триггер с именем tr_InsertTeacher.
  • ON Teacher: Триггер срабатывает при выполнении операций с таблицей Teacher.
  • FOR INSERT: Триггер срабатывает только при добавлении строк в таблицу Teacher.
  • BEGIN...END: Блок кода, который выполняется при срабатывании триггера.
  • INSERT INTO Department (dep_name) VALUES ('Не определен');: Вставляет новую запись в таблицу Department с именем отдела 'Не определен'.

В итоге:
  • При удалении строки из таблицы Groupa, триггер tr_DeleteStudent удалит связанные записи в таблице WorkloadLog.
  • При добавлении строки в таблицу Teacher, триггер tr_InsertTeacher добавит новую запись в таблицу Department с неопределенным именем отдела.
  • Триггеры используются для автоматизации действий, которые должны происходить при определенных изменениях в базе данных.
Похожие вопросы