MySQL в настоящее время не поддерживает обновление строк в той же таблице, для которой назначен триггер, поскольку вызов может стать рекурсивным. У кого-нибудь есть предложения по хорошему обходному пути / альтернативе? Сейчас я планирую вызвать хранимую процедуру, которая выполняет логику, которую я действительно хотел, в триггере, но я бы хотел услышать, как другие обошли это ограничение.
Редактировать: немного больше фона в соответствии с просьбой. У меня есть таблица, в которой хранятся присвоения атрибутов товара. Когда вставляется новая запись родительского продукта, я бы хотел, чтобы триггер выполнил соответствующую вставку в той же таблице для каждой дочерней записи. Эта денормализация необходима для производительности. MySQL не поддерживает это и выдает:
Can't update table 'mytable' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Длительное обсуждение проблемы на форумах MySQL в основном привело к: Использовать хранимый процесс, что я и использовал сейчас.
Заранее спасибо!