Sql triggers

Delus3r

Master Chapuzas
Registrado
3 Nov 2019
Mensajes
153
Puntos
18
Buenas, que errores veis aqui?
Realizar un log de las altas/bajas/modificaciones que se han hecho en la tabla INGREDIENTES, que conste el usuario y la fecha y hora de la modificación

create table log_Ingredientes (
accion varchar2(15) NOT NULL,
id_ing number(4) NOT NULL,
Nombre varchar2(30) NOT NULL,
Tipo varchar2(10) NOT NULL,
Fecha date,
Hora timestamp,
usuario varchar2(20)
);
create or replace trigger log_de_Ingredientes
before insert or update or delete on Ingredientes
for each ROW
begin
if inserting then
insert into log_Ingredientes
values
('ALTA',:new.id_ing,:new.Nombre,:new.Tipo,sysdate,systimestamp,usuario);
if updating then
update into log_Ingredientes
values
('MODIFICACION',:eek:ld.id_ing,:eek:ld.Nombre,:eek:ld.Tipo,sysdate,systimestamp,usuario);
if deleting then
delete into log_Ingredientes
values
('BAJA',:eek:ld.id_ing,:eek:ld.Nombre,:eek:ld.Tipo,sysdate,systimestamp,usuario);
END IF;
end;
/

Esta es la tabla ingredientes

Create table ingredientes
(
Id_ing number(4) constraint ingredientes_iding_pk primary key,
Nombre varchar2(30) constraint ingredientes_nombre_nn not null,
Tipo varchar2(10) constraint ingredientes_tipo_nn not null
);
 

kakadeluxe

Master Chapuzas
Registrado
9 Mar 2018
Mensajes
2.519
Puntos
113
Edad
56
¿Qué errores veo?, pues que hay muchas caritas sonrientes. :eek:
 
Arriba