Buenas necesito ayuda con un ejercicio de triggers que os adjunto
CONSIGNA DEL EJERCICIO
Clientes (id, nombre)
Clientes_VIP{id, nombre)
Vendedores (id, nombre)
Ventas (id_cliente, id_ vendedor, importe, fecha)
Log (id, mensaje)
l. Al realizar una venta, si el importe es superlor a 500€, el cliente pasará a ser cliente vip (se insertará en una nueva tabla clientes_vip, con los campos id, nombre y fecha en que se inserta el registro)
2. De igual manera, al realizar una venta, si el cliente es VIP se aplicará un descuento de un 10% al Importe de la venta.
3. Igualmente, cuando un cliente realice su primera compra recibirá un descuento del 20%.
4. Y si la primera venta de un vendedor es superior a 1000 euros el nombre del vendedor pasará a mayúsculas
El ejercicio 1 lo tengo ya hecho y funciona correctamente.
create or replace NONEDITIONABLE trigger ej1p after insert or update on ventas for each row
DECLARE
vimporte ventas.importe%type := :new.importe;
vnombre clientes.nombre%type;
vid clientes.id%type := :new.id_cliente;
BEGIN
Select nombre into vnombre from clientes where id=:new.id_cliente;
if(vimporte > 500) then
INSERT INTO clientess_vip VALUES (vid, vnombre, sysdate);
end if;
END;
El problema esta en el ejercicio 2 el cual no entiendo como plantearlo, no entiendo como puedo hacer que se coja el descuento del 10%. Yo he pensado en esto pero no funciona:
create or replace trigger ej2p after insert or update on ventas for each row
DECLARE
vimporte ventas.importe%type := :new.importe;
vid clientess_vip.id%type := :new.id_cliente;
BEGIN
:new.importe := :new.importe*1.10;
END;