Tengo una duda: Entre dos entidades cualquiera (solamente dos) pueden existir mas de una relacion??
| |||
Múltiples relaciones entre 2 entidades Tengo una duda: Entre dos entidades cualquiera (solamente dos) pueden existir mas de una relacion?? Última edición por javijar; 28/07/2008 a las 12:31 Razón: imagen |
| |||
Respuesta: Múltiples relaciones entre 2 entidades Por supuesto. Por ejemplo, tenemos las tablas personas y localidades. Si almacenas la localidad de nacimiento de persona ya tienes una relacion. Si ademas quieres guardar la localidad de residencia, ya tienes 2 relaciones. Salu2 |
| |||
Respuesta: Múltiples relaciones entre 2 entidades Los entiendo pero al momento de realizar el modelo Fisico: En una tabla puede haber dos o mas foreign key de otra tabla ?? ó Tengo obligatoriamente que crear otras tablas?? Última edición por javijar; 31/07/2008 a las 15:41 Razón: corregir |
| ||||
Respuesta: Múltiples relaciones entre 2 entidades Si, no hay ningún problema de tener dos o más FK de otra tabla. Y no tienes que crear más tablas que las necesarias. Simplemente la agregas y la referencias a la misma tabla. Eso sí, necesita tener un nombre distinto (por obvias razones). |
| ||||
Respuesta: Múltiples relaciones entre 2 entidades Entendamos una cosa: Un FK es una referencia a la PK de una tabla, por lo que, si bien es posible poner dos, tres o más veces una FK referida siempre a la misma tabla, en todos los casos esas FK apuntan al mismo campo de la otra tabla, porque simplemente una tabla no puede tener nunca más de una PK. En otras palabras, en una tabla Empleado(IdEmpleado, idJefeDpto, IdSupervisor, idJefeProyecto), si el Jefe de Departamento, el Supervisor y el Jefe de Proyectos son la misma persona, aparecerá siempre el mismo valor de ID en los tres campos. En ese sentido, puedes hacer que dos o más FK a punten a la misma tabla. Pero nunca serán valores distintos en ese ejemplo, porque uno sólo de esos valores puede provenir del PK de ese registro en la tabla referida. Solo puede suceder que sean distintos, si los registros a los que apuntan son distintos. Esto es algo que tienes que tener en cuenta a la hor ade diseñar la validación de lo que ingresas y el diseño de la tabla. Si existiese el caso de que el empleado que cumple esas funciones tiene diferentes PK para cada una de esas funciones, eso solo puede suceder si los registros referidos provienen de una tabla distinta, digamos CargosAsignados(idCargoAsignado, IdEmpelado, IdNombreCargo), donde la FK en cada caso apunta a IdCargoAsignado. ¿Se comprende la idea?
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) Última edición por gnzsoloyo; 01/08/2008 a las 06:46 |
| |||
Respuesta: Múltiples relaciones entre 2 entidades Un pequeño apunte: Cita: No necesariamente, una FK debe apuntar a cualquier campo UNIQUE, por definicion un PK es unica.
Iniciado por gnzsoloyo Entendamos una cosa: Un FK es una referencia a la PK de una tabla, por lo que, si bien es posible poner dos, tres o más veces una FK referida siempre a la misma tabla, en todos los casos esas FK apuntan al mismo campo de la otra tabla, porque simplemente una tabla no puede tener nunca más de una PK. A parte de eso, excelente explicacion! Salu2 |