
31/03/2004, 11:00
|
| | Fecha de Ingreso: marzo-2004 Ubicación: Extremadura
Mensajes: 92
Antigüedad: 21 años, 1 mes Puntos: 0 | |
pues yo lo haria de la siguiente forma:
Tabla Cliente con Codigo de Cliente como PK y los demas datos que quieras meter.
Tabla Discos con Referencia komo klave principal, nombre del disco y demas datos, asi por ejemplo tenemos 3 kopias de un mismo disko pero kada uno tiene una referencia distinta
Tabla Prestamos en la que tendriamos que poner Codigo de Cliente, Referencia y Fecha de Prestamo como clave principal y luego aparte pues la fecha de devolucion.
A la hora de realizar un prestamo de un disco de la tabla discos pues habria que sacar la referencia, irse a la tabla prestamos y mirar en ella, se podrian dar los siguientes casos:
1- El disco no se encuentra en prestamos (Quiere decir que no esta prestado)
2-El disco se encuentra y la fecha de devolucion no es nulo (El disco ha sido prestado y devuelto, por lo tanto esta libre)
3-El disco se encuentra pero la fecha de devolucion es nula, por lo tanto el disco esta prestado y no ha sido devuelto aun.
Para hacer todo esto mas facil se podria crear un nuevo campo en la tabla discos, por ejemplo PRESTADO y puede tener dentro el valor true o false.
Realizariamos un disparador en la tabla prestamos para insertar en el que pondriamos el campo PRESTADO a true si dejamos el campo fecha de devolucion nulo que seria lo logico y hariamos otro mas para modificar, comprobamos que la fecha de prestamo ya no es nulo y por lo tanto como el libro ha sido devuelto pues ponemos el campo PRESTADO a false.
Con estos 2 disparadores hechos a la hora de prestar un libro solo tendriamos que ver si el campo PRESTADO es true o false y por lo tanto en el primer caso no podremos prestarlo y en el segundo no habria ningun problema.
Que os parece la solucion?
__________________ Aupa Athletik!!! |