Bases de Datos - ¿Cómo aplicar la "Herencia"? en modelo ER?

 
Vista:
sin imagen de perfil

¿Cómo aplicar la "Herencia"? en modelo ER?

Publicado por UnUsuarioCualquiera (1 intervención) el 17/09/2022 02:38:26
Hola buenas, resulta que tengo varias dudas y cierta confusión respecto a la herencia en a bases de datos.
O bueno a más bien como aplicar o simular la herencia, ya que tengo entendido en el modelo ER no existe el concepto de herencia como tal. Entonces lo que busco con esta pregunta es lograr resolver esas dudas que tengo y que expondré a continuación.

En el modelo entidad-relación (imagen adjunta) que expongo como ejemplo, unas de las tablas que tengo son Personas, Funcionarios y Clientes. Con las cuales intente hacer una relación de herencia. La tabla personas contiene todos los atributos que comparten los funcionarios cliente, además el cod único de persona.

Modelo-ER-Tarea-Modelo-y-Consultas-t.bd-terminado

Mientras que en las tablas de funcionarios y personas
las deje con su propia pk que es el rut (número de identificación para cada persona en mi país). Además contiene
el cod de personas como llave foránea. Y en los funcionarios también una llave fk de sucursal ya que pues es un atributo que solo lo tienen los funcionarios.

Bueno explicado lo anterior, aquí vienen las dudas que espero poder aclarar.

Primero, se supone que lo que intento representar con esto que es, una persona puede ser UN funcionario y una persona puede ser UN cliente. Y a lo que voy con esto es que, teniendo en la tabla funcionario el rut como pk y el cod_persona como pk, esto acaso no se interpretaría como que una persona (que se supone que tiene su propio número telefónico, etc) puede estar asociado a distintos funcionarios? Eso no sería un error acaso? Ya que en palabras mas claras, en la tabla funcionarios se representaría a cada uno con su pk rut, mientras que con la fk cod_persona se podría repetir n veces. O sea que varios funcionarios podrían tener los mismos datos, incluido el mismo teléfono.

Sin embargo, (y aquí hago un paréntesis), mi profesor al ver el modelo dijo que estaba todo correcto.
Le pedí que me explicara porqué, el me explico pero uso como ejemplo las tablas Venta y Detalle_Venta.
Diciendo que lo que pasa es que no hay herencia dentro de un modelo Entidad-Relación. Lo que tenemos son dependencias. El detalle de venta depende de la venta, por eso tenemos entidades fuertes y entidades débiles. Pero no tenemos padres e hijos. Que recordara que en la herencia yo podía decir que el Detalle de la Venta hereda de la Venta todos los valores y los puedo utilizar abajo (en el detalle). Pero no es así, si se tiene que insertar algo, se va a tener que insertar en en detalle de la venta y en la venta.

Con esa explicación que me dio realmente no entendí y me quedé casi en la misma situación. Y es por eso que ahora consulto aquí.

Espero haberme dado a entender, pero es que esas son mis dudas. En resumen necesito saber, si en el caso de que mi modelo afectivamente esta correcto en el sentido de la "herencia", necesito comprender el porqué. Además de porqué se dice que la herencia en bases de datos no existe.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Leonardo Daniel A.
Val: 434
Oro
Ha mantenido su posición en Bases de Datos (en relación al último mes)
Gráfica de Bases de Datos

¿Cómo aplicar la "Herencia"? en modelo ER?

Publicado por Leonardo Daniel A. (211 intervenciones) el 17/09/2022 22:54:11
Estas equivocando conceptos, el concepto de herencia aplica en la programacion orientaba a objetos donde como dices, puedes crear una entidad base con campos comunes y de ahi heredas a otra y la puedes ampliar con mas campos especificos de esa entidad... en Bases de datos relacionales y noSQL eso no existe... sin embargo llegaron a existir Bases de Datos orientadas a objetos que podias hacer aplicar la herencia, no se si sigan existiendo la verdad..

y como te dijo tu maestro en bases de datos, son relaciones o dependencias entre las tablas..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Leonardo Daniel A.
Val: 434
Oro
Ha mantenido su posición en Bases de Datos (en relación al último mes)
Gráfica de Bases de Datos

¿Cómo aplicar la "Herencia"? en modelo ER?

Publicado por Leonardo Daniel A. (211 intervenciones) el 17/09/2022 22:56:21
se me olvido, en tu caso el diagrama esta mal, debe ser una tabla por cada tipo de persona o si son exactamente los mismos campos y nunca van a cambiar... puedes agregar un campo que indetifice el tipo de persona que es...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar