es primera vez que trabajo con PL/SQL solo tengo esto y no se muy bien si servira espero me puedan orientar
Cita:
DECLARE
c_numero clientes.numero%type;
c_nombre clientes.nombre%type;
c_apellido clientes.apellido%type;
c_direccion clientes.direccion%type;
c_rut clientes.rut%type;
c_telefono clientes.telefono%type;
c_ultimacompra clientes.ultimacompra%type;
CURSOR c_client is
SELECT numero, nombre, apellido, direccion, rut, telefono, ultimacompra FROM clientes;
BEGIN
OPEN c_client;
LOOP
FETCH c_client into c_numero, c_nombre, c_apellido, c_direccion, c_rut, c_telefono, c_ultimacompra;
EXIT WHEN c_client%notfound;
insert into error_comuna(numero,nombre,apellido, direccion, rut, telefono, ultimacompra)
values(c_numero, c_nombre, c_apellido, c_direccion, c_rut, c_telefono, c_ultimacompra);
delete from Clientes where numero = c_numero;
END LOOP;
CLOSE c_client;
END;
/* ENTREGA SI HAN PASADO 2 AÑOS */
DECLARE
fech number;
CURSOR f_client is
SELECT (EXTRACT (YEAR FROM ultimacompra)) INTO fech FROM clientes;
BEGIN
open f_client;
loop
fetch f_client into fech;
exit when f_client%notfound;
IF fech < 2014 THEN
insert into añoultimo(num) values (fech);
END IF;
end loop;
close f_client;
END;
c_numero clientes.numero%type;
c_nombre clientes.nombre%type;
c_apellido clientes.apellido%type;
c_direccion clientes.direccion%type;
c_rut clientes.rut%type;
c_telefono clientes.telefono%type;
c_ultimacompra clientes.ultimacompra%type;
CURSOR c_client is
SELECT numero, nombre, apellido, direccion, rut, telefono, ultimacompra FROM clientes;
BEGIN
OPEN c_client;
LOOP
FETCH c_client into c_numero, c_nombre, c_apellido, c_direccion, c_rut, c_telefono, c_ultimacompra;
EXIT WHEN c_client%notfound;
insert into error_comuna(numero,nombre,apellido, direccion, rut, telefono, ultimacompra)
values(c_numero, c_nombre, c_apellido, c_direccion, c_rut, c_telefono, c_ultimacompra);
delete from Clientes where numero = c_numero;
END LOOP;
CLOSE c_client;
END;
/* ENTREGA SI HAN PASADO 2 AÑOS */
DECLARE
fech number;
CURSOR f_client is
SELECT (EXTRACT (YEAR FROM ultimacompra)) INTO fech FROM clientes;
BEGIN
open f_client;
loop
fetch f_client into fech;
exit when f_client%notfound;
IF fech < 2014 THEN
insert into añoultimo(num) values (fech);
END IF;
end loop;
close f_client;
END;