我知道删除触发器中没有“新”值,所以不确定这是否可能。我正在尝试使用删除前触发器来记录一些值,这可以正常工作,但如果用户未在 where 子句中指定任何内容,我还想防止删除任何记录。基本上,我不希望他们抹去整张桌子。(实际上有代码错误的应用程序开发人员)
目前我有:
delimiter $$
create trigger tg_order_shipping_bd
before delete on order_shipping
FOR EACH ROW
begin
insert into order_shipping_log
(log_type, inv_nbr, old_tracking_nbr)
values ( 'DEL', OLD.inv_nbr, OLD.tracking_nbr);
end
$$
那么有没有一种聪明的方法来计算受影响的行数,如果超过 1,防止删除和错误?也许只是重新考虑我们如何处理这个问题会更好。感谢您的任何建议。