Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Como puedo mantener la integridad referencial en este caso?

Estas en el tema de Como puedo mantener la integridad referencial en este caso? en el foro de Bases de Datos General en Foros del Web. Hola a todos, No doy con una solución, a ver si me podéis echar una mano. El caso es el siguiente: Supongamos que se quieren ...
  #1 (permalink)  
Antiguo 05/12/2007, 04:33
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Como puedo mantener la integridad referencial en este caso?

Hola a todos,

No doy con una solución, a ver si me podéis echar una mano. El caso es el siguiente:

Supongamos que se quieren elaborar las listas de los ciudadanos que tienen que botar en cada colegio electoral. Para ello se dispone de tres tablas:

Tabla Colegios: ID_Colegio (PK, Auto-inc), Nombre_Colegio, Ciudad(int)
Tabla Ciudadanos: ID_Ciudadano(PK, Auto-inc), Nombre_Ciudano, Ciudad(int).
Tabla Listas: ID_Lista (PK, Auto-inc),ID_Colegio, ID_Ciudadano.

teniendo en cuenta que:

-En un colegio puede haber varias listas.
-En la tabla Listas, el ciudadano y el colegio tienen que ser de la misma ciudad.


Se os ocurre algo? (a mí poca cosa)


Un saludo y gracias por anticipado.
  #2 (permalink)  
Antiguo 05/12/2007, 05:36
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 2 meses
Puntos: 13
Re: Como puedo mantener la integridad referencial en este caso?

... añadir a la lista una ciudad que sea FK a la ciudad del ciudadano y a la vez FK a la ciudad del colegio!
Un saludo
  #3 (permalink)  
Antiguo 05/12/2007, 08:05
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: Como puedo mantener la integridad referencial en este caso?

Muchas gracias por contestar a los dos Post (como te habrás imaginado están relacionados).

Había pensado en la solcución que me propones, pero pensaba (ahora ya no gracias a tu respuesta al otro Post ) que me obligaría a añadir el Campo ciudad a la clave primaria tanto en la tabla Colegios como en la tabla Ciudadanos.

Entonces, combinando las respuesta de los dos post, lo que tendría que hacer es definir es definir en la tabla Colegios el indice INDEX (id_colegio,ciudad) UNIQUE y en la tabla Ciudadanos el índice INDEX (id_ciudadano,ciudad) UNIQUE

Es correcto?

Muchas gracias otra vez.

(incluyo el link al otro Post que se menciona en este post por si alguien está interesado:
http://www.forosdelweb.com/f21/puede...2/#post2207270)

Última edición por albertoshu; 05/12/2007 a las 08:29
  #4 (permalink)  
Antiguo 05/12/2007, 08:34
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 2 meses
Puntos: 13
Re: Como puedo mantener la integridad referencial en este caso?

ah, no me habia fijado en que el otro post era tuyo, no miro los usuarios de los post

Correcto
  #5 (permalink)  
Antiguo 05/12/2007, 09:13
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: Como puedo mantener la integridad referencial en este caso?

gracias compañero.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:35.