2012-03-28 21 views

Respuesta

25

Entidad-Relación

Usted tiene relaciones (image source)

example for an relationship

y atributos (image source)

example for an attribute

que también pueden ser claves primarias (image source)

example for an primary key

mejorada Modelo Entidad-Relación

Tiene el mismo que con el modelo ER, más

especialización

enter image description here

partición (que son múltiples especializaciones)

generalización

agregación

teclas son anotados de manera diferente:

enter image description here

4

me gustaría añadir que el modelo ER es el modelo básico que tiene todo lo necesario para el álgebra relacional, ya que está (incluyendo la jerarquía de ISA - inadvertencia y otras cosas que no recuerdo). Y es más abstracto (por lo que cada cuadro no tiene que ser una tabla de base de datos y al revés algunos cuadros pueden ser más de 1 tabla)

El modelo EER está más cerca de lo que parece una base de datos real. Entonces cada caja es en realidad mesa.

Supongo que la respuesta aceptada es correcta también, pero en mi opinión (no he leído esto en cualquier lugar, creo que es así) EER fue creado para ayudar a las personas a diseñar bases de datos incluso más básicas que el álgebra relacional. El álgebra relacional con ER le proporciona todo lo que necesita para modelar la base de datos, pero necesita algún compilador que traduzca las jerarquías y relaciones ISA en tablas reales y con EER obtenga lo que ve. Estaba usando ambos para diseñar tablas: ER es más lógico, porque te abstrae de cosas como la herencia, ya que solo le dices a tu herramienta de ER que quiero que herede de eso y no tienes que crear 2 tablas. Pero EER es mejor porque ves lo que obtienes.

Conclusión: ER es el principio básico, EER es una herramienta un poco mejor para el trabajo real con menos abstracción.

(Mi knowladge teoretical del álgebra relacional es demasiado oxidado, así que espero que recuerdo todo bien, me corrija si estoy equivocado)

2

Las características principales agregados por el Modelo ER mejorado son la especialización/generalización y sindicatos. De estas Gen-spec es la que más a menudo aparece en las respuestas a las preguntas de Stackoverflow.

Gen-spec es la contraparte, en el modelado ER, de clase-subclase en el modelado de objetos. Un ejemplo para ilustrar: un vehículo de motor podría ser un auto o un camión. Una característica como el espacio de carga se refiere a un camión, pero no a un automóvil. Entonces, hay características que se aplican a la entidad generalizada, pero también son características que se aplican solo a una de las especializaciones.

Muy a menudo, la gente viene aquí con una pregunta sobre el diseño de la tabla para un caso de gen-especificación. Pero no lo reconocen como tal, porque nunca fueron introducidos a gen-espec en su educación inicial sobre bases de datos.

Otra forma de decir esto es que se les enseñó cómo modelar e implementar relaciones "tiene una", pero no cómo modelar e implementar relaciones "es una".

Cuestiones relacionadas