Modelo entidad relación

Quisiera saber si al hacer mi modelo entidad relación puedo tener como llave primaria en una tabla la misma llave primaria que en otra pero sin agregarle ninguna otra llave es decir tener como identificador único un código en varias tablas por ejm tengo una tabla postulante cuya llave primaria es código y tengo una tabla postula cuya llave primaria es también código siendo esta foránea de la tabla postulante, de no poderse cuales son los motivos, y asumiendo que es posible en que casos se da

2 respuestas

Respuesta
1
Si se puede. Esto es para los casos en los que hay una relación entre las tablas de 1 a 1, o 1 a 0.
Puedes tener problemas con los autonuméricos. Si lo usas, sólo en una tabla; en el caso de la relación 1 a cero, debe ser en la de 1.
Gracias por la respuesta, quisiera por favor que me dijeras en que casos se utiliza eso, porque no poner todos los atributos en una sola tabla, de ser posible podrías darme un ejemplo, gracias
Una relación uno a uno no tiene mucho sentido, ya que lo suyo es agrupar todos los datos en una sola tabla. Puede ser interesante en un caso: que cada fila tenga muchos datos. Hay una limitación de 8kb por fila de una tabla, si va a ocupar más de eso, habría que dividir las columnas en dos tablas, pero esto a mi no me ha pasado nunca, y si pasa, probablemente no se trata de un buen diseño.
Una relación 1 a 0 tiene sentido cuando hay datos de un determinado concepto que pueden aparecer o no. Por ejemplo: una persona que puede tener almacenado los datos de su familia. En una tabla (cardinalidad 1)almacenaríamos los datos propios de la persona (Nombre, CIF, Teléfono, etc.); aquí se podría poner un autonumérico como clave (idPersona). En otra tabla almacenaríamos los datos propios de la familia (Nº de hijos, nombre de la pareja, domicilio familiar, etc) y la clave sería la misma que en la primera tabla pero sin autonumérico. Para dar de alta un registro en la última tabla, es necesario seleccionar primero un registro de la primera para heredar el idPersona.
Respuesta
1
Si, no hay ningún problema en hacer esto, lo único que te recomiendo es que utilices nombres diferentes para cada campo de cada tabla para poder identificarlos después. Por ejemplo uno puede ser Postulante_Codigo y el otro Postula_Codigo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas