Una tercera vía es utilizar semáforos o un campo que indique que no se desea calcular el stock.
Por ejemplo:
Código:
update semaforos set calcular_stock = 0
-- insert de 6000 pedidos.
update semaforos set calcular_stock = 1
Y en los triggers o procedimientos que tocan el stock
Código SQL
[-]
create trigger detalle_pedido_bi0 before insert
declare variable calcular_stock smallint;
begin
-- Obtengo valor de semaforo
select calcular_stock from semaforos
into : calcular_stock;
-- Calculo stock si el semaforo esta establecido
if (calcular_stock = 1) then
begin
update stock ...
end
end
Podría ser relativamente peligroso si el último UPDATE donde vuelves a poner el semáforo no se ejecuta por algún error.