Hola, de nuevo compañero.
Pensaba que el update que hacías era para otra tabla. Lo que pretendes, a mi modo de ver parece demasiado rebuscado. desde el trigger BEFORE INSERT no tiene sentido forzar un UPDATE y cancelar el INSERT. Seguramente tendrás problemas por MUTATING del registro que estás insertando/actualizando.
Deberías plantearte encapsular esa funcionalidad que necesitas en un procedimiento que haga el INSERT o UPDATE según corresponda.
Ejemplo:
Código SQL:
Ver originalCREATE OR REPLACE PROCEDURE P_GUARDAR_POLIZA( P_POLIZA IN POLIZASPRUEBA%ROWTYPE ) IS
--
v_NUMERO_POLIZAS NUMBER ;
--
BEGIN
--
SELECT COUNT(*)
INTO v_NUMERO_POLIZAS
...
...
IF V_NUMERO_POLIZAS > 0 THEN
--
UPDATE ...........
--
ELSE
--
INSERT .......
--
END IF;
--
END;
Ago así, espero que te sirva.
Un saludo.