bueno vuelvo otra vez por aca a molestar con la base de datos de la biblioteca
Código SQL:
Ver originalCREATE TABLE alumnos(
cod_alumno INTEGER NOT NULL,
nombre_alumno VARCHAR(20)NOT NULL,
libros_prestados INTEGER,
CONSTRAINT PK_alumn PRIMARY KEY (cod_alumno)
);
CREATE TABLE libros(
cod_libro INTEGER NOT NULL,
nombre VARCHAR(20)NOT NULL,
estado VARCHAR(20) NOT NULL,
CONSTRAINT PK_libros PRIMARY KEY (cod_libro)
);
CREATE TABLE PRESTAMOS(
codi_prestamo INTEGER NOT NULL,
codi_libro INTEGER NOT NULL UNIQUE,
codi_alumno INTEGER NOT NULL,
FECHA_PRESTAMO DATE DEFAULT SYSDATE,
FECHA_ENTREGA DATE DEFAULT SYSDATE+3,
FECHA_DEVUELTO DATE,
CONSTRAINT PK_prestam PRIMARY KEY (codi_prestamo),
CONSTRAINT fk_libro FOREIGN KEY (codi_libro) REFERENCES libros (cod_libro),
CONSTRAINT fk_alum FOREIGN KEY (codi_alumno) REFERENCES alumnos (cod_alumno)
);
En este caso hice 2 trigger uno para que me cambie el estado del libro de disponible a no disponible en el caso de que si es prestado el libro cambie el estado del libro a no disponible y cuando es devuelto cambie nuevamente a disponible... Ahora es el caso que no puedo prestar el libro 2 veces si no a sido devuelto y si a sido devuelto si se puede prestar nuevamente... No se que caso utilizar si un procedimiento o función y si puede me adjuntan el código de dicho respuesta...