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

MySQL.Можно ли поместить в триггер запрос?

Павел Знаток (293), закрыт 3 года назад
Delimiter |
Create trigger ych1 AFTER INSERT ON Учащиеся
For Each Row
Begin
Select Учащиеся. ФИО as Учащийся, Работники. ФИО as Преподаватель, Count(Учащиеся. Код_учебной_группы) as Количество_учащихся
From Учащиеся, Работники, Учебные_группы
Where Учащиеся. Код_учебной_группы = Учебные_группы. Код_учебной_группы and
Работники. Код_работника = Учебные_группы. Код_преподавателя and
Учащиеся. Код_учебной_группы = 1;
End;
|
Выбивает ошибка 1415 Not allowed to return a result set from a function. Я частично понимаю из-за чего, но как это тогда по другому записать?
Лучший ответ
Дед Мазай Гений (58109) 4 года назад
Зачем в триггере выполнять этот запрос? Куда девать его результат?
Остальные ответы
Андрей Высший разум (425034) 4 года назад
Триггер НЕ предназначен для возврата результата запроса. В MySQL единственное назначение триггера - изменить данные запроса / изменить данные в ДРУГИХ таблицах.

Хочешь создать запись и вернуть результат запроса - создавай ХРАНИМУЮ ПРОЦЕДУРУ, включающую INSERT и SELECT, и вызывай её ВМЕСТО INSERT.
Похожие вопросы