MySQL временное отключение триггеров

К сожалению «штатной» возможности на данный момент нет. Можно только сделать «финт ушами», и в триггер добавить проверку на необходимость срабатываний. Например вот так:

	IF @LB_DISABLE_TRIGGERS IS NULL OR @LB_DISABLE_TRIGGERS = 0 THEN
		SELECT `vg_id` INTO l_vg_id FROM `usbox_services` WHERE `serv_id` = OLD.`serv_id`;
		CALL CHARGE_IMPL(l_vg_id, OLD.`agrm_id`, OLD.`period`, OLD.`c_date`, -OLD.`amount`);
	END IF;

А в нужный момент, выполнять:

set @LB_DISABLE_TRIGGERS=1;

Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.