Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   base de datos de videoclub cn delphi (https://www.clubdelphi.com/foros/showthread.php?t=50957)

miriam4072 03-12-2007 18:08:05

base de datos de videoclub cn delphi
 
Buenas estoy realizando una base de datos que realice las gestiiones propias de un videoclub. Las siguientes restricciones no se como hacerlas:
-que al eliminar un cliente no se eliminen sus alquileres(por cuestiones de estadisticas), poner un valor testigo xej 00000 en el campo nif_cliente.
-que no se pueda dar de alta un alquiler si una pelicula o cliente no existe antes en la base de datos,
gracias

enecumene 03-12-2007 18:20:45

Hola miriam4072, bienvenida al club, primero que todo te invito a que leas la guia de estilo de este foro, para que estes al tanto de como funciona aqui.

Cita:

-que al eliminar un cliente no se eliminen sus alquileres(por cuestiones de estadisticas), poner un valor testigo xej 00000 en el campo nif_cliente.
si se trata para fines de estadisticas, es bueno crear otra tabla como una especie de historico de alquileres, asi que cuando se realiza un alquiler los datos se graben en ambas tablas: Alquileres e historico, asi cuando se elimina un cliente no se elimina los alquileres.

Cita:

-que no se pueda dar de alta un alquiler si una pelicula o cliente no existe antes en la base de datos,
gracias
Bueno para eso deberias postear un codigo de como estas haciendo esa consulta y asi te podremos ayudarte mas comodo y mas rapido.

espero haberte ayudado.

Saludos.

ContraVeneno 03-12-2007 18:22:51

Cita:

Empezado por miriam4072 (Mensaje 250034)
-que al eliminar un cliente no se eliminen sus alquileres(por cuestiones de estadisticas), poner un valor testigo xej 00000 en el campo nif_cliente.

En lugar de borrar el registro, utiliza otro campo que se llama "Estatus" por ejemplo y solo cámbiale el valor. No tienes que borrar el registro.

Cita:

Empezado por miriam4072 (Mensaje 250034)
-que no se pueda dar de alta un alquiler si una pelicula o cliente no existe antes en la base de datos,

Igual, cada película con un estatus de disponible o no y un cliente con estatus de activo o no, verificas eso antes de hacer el alquiler.

Gabo 03-12-2007 18:34:44

Como dice ContraVeneno, conviene utilizar en esos casos un campo que indique su estado en lugar de eliminarlo realmente. Puede ser uno de nombre CLIENTE_BORRADO de tipo caracter y largo 1, donde 0 indica que no está eliminado y 1 indica que si lo está. Asi guardas el registro para consultas pero no lo ocupas para los alquileres.

Delphius 03-12-2007 18:53:38

Tengo una duda al respecto al inciso en el que dice:

Cita:

Empezado por miriam4072 (Mensaje 250034)
-que no se pueda dar de alta un alquiler si una pelicula o cliente no existe antes en la base de datos,
gracias

Cita:

Empezado por ContraVeneno (Mensaje 250037)
Igual, cada película con un estatus de disponible o no y un cliente con estatus de activo o no, verificas eso antes de hacer el alquiler.

No se si entendí bien... pero la solución que ofreces es para cuando llega un cliente y desea consultar si la película está disponible para el alquiler.

Pero de acuerdo a lo que interpreto de la oración de miriam4072 eso hace alusión a un aspecto del sistema y no de la base de datos. Es decir que el sistema debería chequear la existencia tanto del cliente como de la película para permitir el alquiler. Si bien la integridad referencial garantiza que exista la relacion entre los elementos... ¿No es acaso una funcionalidad del sistema a lo que apunta el sentido del texto?:confused:

Puede que esté confundido... ¿alguien me lo podría aclarar?

Miriam4072, sería oportuno que nos indiques con que motor de base datos estás trabajando.

Saludos,

ContraVeneno 03-12-2007 19:52:17

obviamente, el verificar que la película exista y este disponible, así como lo relativo al cliente, se deberá hacer ANTES de efectuar el alquiler... es decir, esta verificación deberá ser un requisito para "empezar" el proceso de alquiler.

No hay necesidad de empezar el proceso de alquiler si cualquiera de estos dos elementos no existe.


La franja horaria es GMT +2. Ahora son las 06:47:53.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi