Está en la página 1de 1

REATE TRIGGER InsertaPrestamos ON MOVE_LIBROS FOR INSERT AS BEGIN SET NOCOUNT ON; DECLARE @estadoLector char(01) DECLARE @disponibilidad

char(01) select @estadolector = (select estado from LECTORES L inner join inserted i on L.dni = i.dni) select @disponibilidad = (select disponibilidad from EJEMPLARES E inner join inserted i on E.idEjemplar = i.idEjemplar) if @disponibilidad = '1' AND @estadolector = '4' begin UPDATE EJEMPLARES SET disponibilidad = '2' FROM EJEMPLARES E inner join MOVE_LIBROS M on E.idEjemplar= M.idEjemplar UPDATE LECTORES SET estado='3' from LECTORES L inner join MOVE_LIBROS M on L.dni = M.dni end ELSE begin if @disponibilidad = 2 Begin RAISERROR('El Libro esta prestado', 10,1) ROLLBACK TRANSACTION End IF @estadolector = 1 Begin RAISERROR('El Lector tiene libro prestado fuera de fecha', 10,1) ROLLBACK TRANSACTION End IF @estadolector = 2 Begin RAISERROR('El Lector esta castigado', 10,1) ROLLBACK TRANSACTION End IF @estadolector = 3 Begin RAISERROR('El Lector tiene un libro prestado', 10,1) ROLLBACK TRANSACTION End end END GO