[ Foro de SQL (y MySQL) ]

MER A MR

25-Apr-2020 18:54
Invitado (el bar sinso)
7 Respuestas

Que tal amigos , espero puedan aclararme esta duda
haciendo un pequeño trabajo de la escuela de una bd de pokemon me vi en este pequeño y para mi problema
ya que el mestro menciona que cuando existen relaciones 1 a 1 entre 2 entidades en en modelo entidad-relacion , estas deben fusionarse para crear una sola tabla cuando se pase al modelo relacional , ya es eleccion personal elegir ecual llave primaria eliges etc, claro hay ciertas reglas que e investigado en las relaciones 1 a 1 pero en mi caso todas las relaciones en cada entidad corresponde 1 a 1 ,
hasta aqui todo bien , el problema que tengo es que al tener 3 entidades 1 a 1 se supone que estas deben fusionarse
la gran duda que tengo es que pasa con las demas tablas que tienen una relacion con estas 3 tablas que fusionare , creo que cambiaria completamente el modelo en cuanto a relaciones o tablas
anexo foto del modelo que hice segun las especificaciones del trabajo
en mi caso mi duda es entre las entidades gimnasio ,tipo pokemon y lider gimnasio estas son las tablas en las que la relacion seria 1 a 1  , lo que creo que pasaria es que al unirlas perderia llaves foraneas en otras tablas
imagen del MER
https://ibb.co/CzqBf3f
gracias espero puedan aportar sus conocimientos


25-Apr-2020 19:49
Nacho Cabanes (+84)

En un primer vistazo, veo poca más relación 1:1 que la de lider de gimnasio (¿no tiene mucho en común con un entrenador?). ¿Seguro que también es 1:1 entre tipo de pokemon y gimnasio?


25-Apr-2020 20:40
Invitado (el bar sinzo)

HOLA AGRADESCO TU RESPUESTA , SI TE EXPLICO SEGUN LAS ESPECIFICACIONES DEL TRABAJO SERIAN ESTAS : UN LIDER SOLO PUEDE SER LIDER DE 1 GIMNASIO Y UN GIMNASIO SOLAMENTE PUEDE TENER UN LIDER POR ELLO LA RELACION 1 A 1 ENTRE ELLAS ,Y UN GIMNASIO SOLO PUEDE SER DE UN TIPO ES DECIR DE AGUA , O FUEGO ETC Y 1 SOLO TIPO  PUEDE SER UN GIMNASIO POR ELLO RELACION 1 A 1


25-Apr-2020 22:59
Nacho Cabanes (+84)

Ok, entendido.

Una forma de implantar las relaciones 1:1 es fusionar, pero otra es crear una tabla nueva para la relación, en la que una clave ajena actúe como clave primaria y la otra como clave alternativa.

De hecho, en este caso, que de cada tipo de pokemon puede haber varios pokemon individuales, todo dirige a que haya un tabla para los tipos de pokemon.

Para los "líder de gimnasio", yo también optaría por incluir sólo su código De hecho, para mí, falta una tabla "persona", de la que tanto el "lider de gimnasio" como el "entrenador" son especializaciones.
Pero la relación de 1:M de los Pokemon con su tipo Entonces en la tabla de Gimnasio añadirías el código del


25-Apr-2020 23:12
Invitado (el bar sinzo)

Que interesante respuesta , quieres decir que puedo  dejar las tablas 1 a 1  y crear una nueva tabla , de la misma manera en la que se crea una tabla en relaciones muchos a muchos?


26-Apr-2020 00:22
Nacho Cabanes (+84)

No de la misma manera, pero sí de forma parecida... hasta cierto punto.

La tabla estaría formada por las claves de ambas tablas relacionadas, pero en un M:M la clave primaria son las dos juntas y en un 1:1 (en el que no haya restricciones de existencia) una actúa como clave primaria y la otra es clave alternativa.


26-Apr-2020 01:10
Invitado (el bar sinzo)

Muchas gracias me a servido mucho tu ayuda , en resumidas cuentas en una relacion 1 a 1 puedo crear una tercera tabla en la relacion entre ellas utilizando una llave primaria de cualquiera de las 2 tablas y la otra llave primaria pasaria ser llave candidata, entonses esta tabla no tiene llaves foraneas?


26-Apr-2020 01:32
Nacho Cabanes (+84)

Sí, claro. Ambas son claves ajenas.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)