El modelo entidad-relación le permite describir. Modelo conceptual de base de datos - Diagrama de relación entre objetos

CONFERENCIA

El modelo entidad-relación.

Conceptos básicos: Esencia, Propiedades, Relaciones.

Representación de entidades, propiedades, relaciones

9.1. Modelo "Entidad-Relación"

La herramienta más común para modelar el área temática de los sistemas enfocados al procesamiento de información fáctica es el modelo "entidad-relación" ( Modelo de entidad-relación-ER METRO), propuesto por primera vez por Peter Ping-Sheng Chen en 1976. Este modelo se usa tradicionalmente en análisis y diseño estructural, pero esencialmente implementa un enfoque de objeto para el modelado de dominio.

El modelo entidad-relación es la base de un número significativo de productos CASE comerciales que respaldan el ciclo completo de desarrollo de los sistemas de bases de datos o sus etapas individuales. Al mismo tiempo, muchos de ellos no solo soportan la etapa de diseño conceptual del área temática del sistema que se está desarrollando, sino que permiten realizar la etapa de diseño lógico en base al modelo construido por sus medios. generando automáticamente un esquema de base de datos conceptual para el DBMS seleccionado, por ejemplo, un esquema de base de datos para algún servidor SQL u objeto DBMS.

El modelado del área temática en este caso se basa en el uso de diagramas gráficos, que incluyen una cantidad relativamente pequeña de componentes. (diapositiva 2) y lo mas importante - tecnología de construcción tales diagramas.

base semántica Urgencias Los modelos hacen las siguientes suposiciones:

- esa parte del mundo real (un conjunto de objetos interconectados), cuya información debe colocarse en la base de datos, puede ser presentado como un conjunto entidades;

- cada entidad tiene propiedades características (atributos) que la distinguen de otras entidades y le permiten identificar;

- las entidades se pueden clasificar por tipos de entidad: cada instancia de una entidad (que representa algún objeto) se puede asignar a una clase - escribe entidades, cada instancia de la cual tiene propiedades comunes a ellos y los distingue de las entidades de otras clases;

- La sistematización de la representación basada en clases, en el caso general, implica una dependencia jerárquica de los tipos: la esencia del tipo. PERO es subtipo entidadesBsi cada instancia de tipo PERO es una instancia de una entidad de tipoB;

- Las relaciones entre objetos se pueden representar como conexiones- entidades que sirven para fijar (representar) la interdependencia de dos o más entidades.

Aquí es necesario enfatizar una vez más el carácter informativo del concepto esencia y su relación con objetos materiales o imaginarios del área temática. Cualquier objeto del área temática tiene propiedades, algunas de las cuales se destacan como características, significativas desde el punto de vista de la tarea aplicada. En este caso, por ejemplo, en el proceso de análisis y sistematización del área temática, suele distinguirse clases– colecciones de objetos que tienen el mismo conjunto de propiedades especificadas en el formulario conjuntos de atributos(los valores de los atributos para objetos de la misma clase pueden diferir naturalmente). En consecuencia, en el nivel de representación del área temática (es decir, su modelo infológico), el objeto considerado como concepto (un objeto en la mente humana) corresponde al concepto esencia; objeto, como parte del mundo material (y existiendo independientemente de la conciencia humana), corresponde al concepto instancia de entidad; la clase de objetos corresponde al concepto tipo de entidad.

A continuación, dado que el modelo infológico no considera instancias individuales de objetos, sino clases, no distinguiremos entre los conceptos correspondientes de estos dos niveles, es decir, supondremos la identidad de los conceptos un objeto y esencia, propiedad del objeto y propiedad de la entidad.

Sobre el diapositiva 3 el ejemplo dado de una representación de entidad, que no está completa y no pretende ser una coincidencia exacta con ninguna versión de la construcción de diagramas ER.

El modelo ER, como descripción del área temática, debe definir los objetos y las relaciones entre ellos, es decir. establecer enlaces de los dos tipos siguientes:

1. relaciones entre objetos y conjuntos de propiedades características y así definir los propios objetos;

2. conexiones entre objetos que determinan la naturaleza y el carácter funcional de su interdependencia.

Como se señaló anteriormente, el modelado ER del área temática se basa en el uso de diagramas gráficos, como una forma simple (familiar), visual y, al mismo tiempo, informativa y multidimensional de mostrar los componentes del proyecto.

Esencia. Una entidad mediante la cual se modela una clase de objetos similares se define como "una cosa que se puede identificar claramente". Así como cada objeto se caracteriza únicamente por un conjunto de valores de propiedad, una entidad debe determinado asi que conjunto de atributos, lo que permitiría distinguir entre instancias individuales de la entidad. Cada instancia de una entidad debe ser distinta de cualquier otra instancia de la misma entidad (este requisito es similar al requisito de que no haya tuplas duplicadas en las tablas relacionales). Por ejemplo, para identificar de forma única cada instancia de la entidad "Empleado", se introduce el atributo "Número de mesa", que por su naturaleza siempre tendrá un valor único dentro de la empresa. Es decir, el identificador único de una entidad puede ser un atributo, una combinación de atributos, una combinación de relaciones o una combinación de relaciones y atributos que distingue de manera única cualquier instancia de una entidad de otras instancias de una entidad del mismo tipo.

entidad tiene nombre, único dentro del modelo. Donde nombre de la entidad- esto es escribe un nombre, no una instancia particular.

Las entidades se dividen en fuerte y débil. Una entidad es débil si su existencia depende de otra entidad que es fuerte en relación con ella. Por ejemplo, la entidad "Subordinado" es débil en relación con la entidad "Empleado": si se elimina un registro correspondiente a algún empleado que tiene subordinados, entonces también se debe eliminar la información sobre la subordinación.

Propiedades( diapositiva 4)

propiedades de la naturaleza como la naturaleza de la relación las propiedades con una entidad (objeto) pueden ser diferentes. Considere los principales tipos de propiedades.

La propiedad puede ser múltiple o único- es decir. un atributo que define una propiedad puede tener varios valores al mismo tiempo o, en consecuencia, solo uno. Por ejemplo, un empleado puede tener varias especialidades, pero el único valor "Tab. habitación".

La propiedad puede ser simple(no sujeto a una mayor división en términos de tareas aplicadas) o compuesto– si su valor está compuesto por los valores de propiedades simples. Por ejemplo, la propiedad "Año de nacimiento" es simple, mientras que la propiedad "Dirección" es compuesta, porque incluye los valores de las propiedades simples "Ciudad", "Calle", "Casa".

En algunos casos es útil distinguir básico y derivados propiedades. Por ejemplo, un "Proveedor" puede tener una propiedad de "Cantidad total de piezas para suministrar", que se calcula sumando la cantidad de piezas que suministra para el proyecto.

Si no se requiere la presencia de alguna propiedad para todas las instancias de una entidad, entonces tal propiedad se llama condicional. Por ejemplo, no todos los empleados tienen el atributo "título".

Los valores de propiedad pueden ser constantes - estático, o dinámica, es decir. cambian con el tiempo. Por ejemplo, la propiedad "Tab. número" es estático y "Dirección" es dinámico. La propiedad puede ser incierto si es dinámico pero aún no se ha establecido su valor actual.

La propiedad puede ser vista como llave si su valor es único y posiblemente, en un determinado contexto, identifica de forma única a una entidad. Por ejemplo, un subordinado de algún empleado específico.

Conexiones. Además de los vínculos entre el objeto y sus propiedades, el modelo infológico refleja los vínculos entre objetos de diferentes clases. Conexión se define como "una asociación que reúne a múltiples entidades". Esta asociación siempre puede existir entre diferentes entidades o entre una entidad y ella misma (relación recursiva).

Como una entidad, una relación es tipo de nuevo concepto, es decir todas las instancias de entidades vinculables obedecen las reglas de vinculación de tipos. La diferencia fundamental entre los tipos de relaciones entre tipos e instancias se ilustra en diapositivas.

Las entidades conectadas por una relación se llaman Participantes. Grado de conexión determinada por el número de participantes en la comunicación.

Si cada instancia de una entidad participa en al menos una instancia de una relación, entonces dicha participación de esta entidad se llama completo(o obligatorio); de lo contrario - incompleto(o opcional).

Se especifica el carácter cuantitativo de la participación de instancias de entidad (una o varias) tipo de conección(o poder de comunicacion). Los siguientes tipos son posibles: "cara a cara"(1:1), "uno a muchos"(1: METRO) , "muchos a uno"(M:1) , "muchos a muchos"(MM) (Diapositivas 5, 6, 7).

Cabe señalar que la herramienta de enlace es un medio para representar objetos complejos, cada uno de los cuales puede ser considerado como un conjunto de interconectados de alguna manera objetos simples. La división en objetos simples y complejos, así como la naturaleza de la relación, es condicional y está determinada por las características del análisis del área temática, es decir. al final, la naturaleza del uso de datos sobre objetos en los problemas aplicados que se resuelven. Al mismo tiempo, desde el punto de vista de, por ejemplo, un constructor, DETALLES es un objeto complejo, y desde el punto de vista de un proveedor, es simple.

Entre los muchos tipos de relaciones, las más frecuentes son relaciones de tipo no rárquico como “parte-todo”, “género-especie”.

La relación parte-todo se utiliza para representar objetos compuestos. Por ejemplo, las MÁQUINAS consisten en PARTES, las PARTES consisten en PARTES. Aquí son posibles como relaciones "uno a muchos" asi que "muchos a muchos".

Relación Género-Especie - Para Representación objetos generalizados. Por ejemplo, los EMPLEADOS se dividen por profesión en DISEÑADORES, PROGRAMADORES, TRABAJADORES; PROGRAMADORES - para PROGRAMADORES APLICADOS y PROGRAMADORES DE SISTEMAS. Relaciones jerárquicas, y en particular - " género-especie”, se utilizan generalmente como base para clasificar objetos de acuerdo con conjuntos de rasgos característicos. Además, los objetos de "especies" heredar propiedades genéricas.

Otro tipo de relación ampliamente utilizado es la agregación: la unión de objetos simples en uno complejo según el principio de su propiedad. agregar o su participación conjunta en algún proceso. La agregación, considerada aquí como un caso más general de relaciones jerárquicas, combina objetos de diferente naturaleza con la única propiedad común "compartir". Los objetos agregados generalmente se llaman sustantivos verbales, por ejemplo, "Compuesto»: DIVISIÓN comprende EMPLEADOS; " Suministro": PROVEEDOR suministros DETALLES.

supertipos y subtipos. Una entidad puede dividirse en dos o más, mutuamente excluyentes subtipos, cada uno de los cuales incluye atributos y/o relaciones comunes. Estos atributos y/o relaciones comunes se definen explícitamente una vez en un nivel superior. Los subtipos pueden definir sus propios atributos y/o relaciones. En principio, la subtipificación puede continuar en niveles más bajos, pero en la mayoría de los casos dos o tres niveles son suficientes.

La entidad a partir de la cual se definen los subtipos se denomina supertipo. Los subtipos deben formar un conjunto completo, es decir, cualquier instancia de un supertipo debe pertenecer a algún subtipo. A veces, para completar el conjunto, es necesario definir un subtipo adicional, por ejemplo, OTROS.

El subtipo hereda las propiedades y relaciones del supertipo. Por ejemplo, el tipo de entidad PROGRAMADOR es un subtipo de la entidad EMPLEADO. Los programadores tienen todas las propiedades de los empleados y participan en todas las relaciones, pero lo contrario no es cierto.

Tipo de entidad, sus subtipos, subtipos de estos subtipos, etc. forma jerarquía de tipo de entidad, cuyo ejemplo se muestra en Diapositiva 8.

9.2. diagrama ER

Como se señaló anteriormente, uno de los principales objetivos del modelado semántico es reflejar los resultados del análisis del área temática en una forma bastante simple, visual pero, al mismo tiempo, formalizada y bastante informativa.

En este sentido, el diagrama ER es una muy buena solución. Combina enfoques funcionales e informativos, lo que hace posible representar tanto la totalidad de las funciones realizadas como las relaciones entre los elementos del sistema especificados por las estructuras de datos. Al mismo tiempo, la forma gráfica le permite mostrar de forma compacta (gracias a los símbolos visuales) la tipología y las propiedades de las entidades y las relaciones, y los formalismos subyacentes a los diagramas ER le permiten utilizar un aparato de normalización estricto en el siguiente paso. paso en el diseño de la estructura lógica de la base de datos.

esencias.Cada tipo de entidad en los diagramas ER se representa como un rectángulo que contiene el nombre de la entidad. Como nombre, se suelen utilizar sustantivos (o giros de un sustantivo) en singular. Para reflejar las entidades de tipos débiles, se utilizan rectángulos, cuyos lados se dibujan con líneas dobles. Por ejemplo, en el presentado diapositiva 9 En el diagrama ER, SUJETO es una entidad de tipo débil.

Propiedades.Las propiedades sirven para aclarar, identificar, caracterizar o expresar el estado de una entidad o relación. Las propiedades se muestran como puntos suspensivos que contienen el nombre de la propiedad. La elipse está conectada a la entidad o relación correspondiente por una línea.

Los nombres de las propiedades clave están subrayados. Por ejemplo, la propiedad "Tab.number" de la entidad EMPLEADO.

El contorno de la elipse se dibuja como una línea doble si la propiedad tiene varios valores. Por ejemplo, la propiedad de "especialidad" de la entidad EMPLEADO.

El contorno de la elipse se dibuja con una línea discontinua si se deriva la propiedad. Por ejemplo, la propiedad "cantidad" de la entidad PROVEEDOR.

La elipse está conectada por una línea discontinua si la propiedad es condicional. Por ejemplo, la propiedad "In. Soy el lenguaje de la esencia EMPLEADO.

Si la propiedad es una propiedad compuesta, sus propiedades constituyentes se muestran con otras elipses conectadas a la elipse compuesta. Por ejemplo, la propiedad "Dirección" de la entidad EMPLEADO consta de las propiedades simples "Ciudad", "Calle", "Casa".

Conexiones.Una relación es una asociación gráfica que se establece entre entidades. Cada tipo de conexión Urgencias -el gráfico se muestra como un rombo con el nombre de la relación dentro. Sustantivos verbales se utilizan generalmente como el nombre.

Los lados del rombo se dibujan con líneas dobles si se trata de una conexión de una entidad de tipo débil con una entidad de la que depende. Por ejemplo, la relación "Subordinación", que vincula una entidad de tipo débil SUJETO con la entidad EMPLEADO, de la que depende.

Los participantes de la comunicación están conectados a las líneas de comunicación. La doble línea denota la plena participación de la entidad en relación con la parte dada. Por ejemplo, la conexión "Subordinación", del lado de la entidad SUJETO.

La relación se puede modificar especificando un rol. Por ejemplo, para la relación recursiva "Composición", se indican los roles: "Detalle comprende…” y “Parte incluida parte …».

El tipo de conexión se indica mediante los índices "1" o "M" encima de la línea correspondiente. Por ejemplo, la relación "Administración" es del tipo "uno a muchos": un empleado puede administrar muchos proyectos; la relación "Participación" es del tipo "muchos a muchos": un empleado puede participar en muchos proyectos y muchos empleados pueden participar en el proyecto.

Un ejemplo de una forma normalizada de un diagrama ER se muestra en diapositiva 10.

Una de las variedades del modelo entidad-relación se utiliza en la notación IDEF1X, que forma parte de la familia de estándares IDEF.

El lenguaje gráfico del modelo y un diagrama de ejemplo se presentan en diapositiva 11 .

Relaciones opcionales entre entidades Departamento y empleado, empleado y subordinar tener una cardinalidad de uno a muchos (el final de la relación "varios" se indica con un punto grueso), y una relación obligatoria entre entidades Empleado y Proyecto tiene una cardinalidad de muchos a muchos.

Los elementos gráficos de las principales notaciones del modelo "entidad-relación" se presentan en diapositiva 12 .


Tal definición de una relación como una entidad de un tipo especial refleja la esencia del enfoque relacional, que se caracteriza por una representación uniforme de entidades de todo tipo, incluidas las relaciones, a través de variables relacionales.

Según lo dispuesto en el modelo relacional, la relación "correcta" es sólo una relación del tipo " muchos a muchos", ya que se crea una variable de relación separada para implementarla. Conexiones uno a uno, uno a muchos siempre se puede representar utilizando el mecanismo de clave foránea de uno de los relación-variables.

1.5 modelado de ER

El modelado de datos es el primer paso en el diseño de bases de datos, es la transición de objetos del mundo real a un modelo informático de la base de datos.

El modelo ER sirve para reunir diferentes representaciones de datos a nivel conceptual. Sobre la base del modelo ER, se crean diagramas ER que muestran los tres componentes principales del modelo ER: entidades, atributos y relaciones.

1.5.1 Entidades

Dado que una entidad es un objeto del mundo real, las palabras "entidad" y "objeto" a menudo significan lo mismo.

A nivel de modelado ER, una entidad en realidad significa un conjunto de entidades (conjunto de entidades), y no una sola entidad. En otras palabras, una entidad en el modelado ER corresponde a una tabla, no a una fila en un entorno relacional; una sola fila en un modelo ER se denomina instancia de entidad (ocurrencia de entidad). Una entidad se representa mediante un rectángulo que contiene el nombre de la entidad.

1.5.2 Atributos

Los atributos describen las propiedades de una entidad. Por ejemplo, la entidad ESTUDIANTE incluye los atributos NSTBIL (número de identificación del estudiante), FIO (nombre del estudiante), KURS (curso), etc.

Arroz. 1.24. Atributos de la entidad ESTUDIANTE en el modelo ER.

Los atributos tienen dominios. Un dominio es un conjunto de valores posibles para un atributo. Por ejemplo, el dominio del valor numérico de la calificación promedio de un estudiante podría escribirse como un intervalo.

Las claves primarias en el modelo ER están subrayadas. Si hay varias claves primarias, todas están subrayadas.

Los atributos pueden ser simples o compuestos. Un atributo compuesto es un atributo que se puede dividir en múltiples atributos. Por ejemplo, el atributo DIRECCIÓN (dirección) se puede dividir en CALLE (calle), CIUDAD (ciudad), etc.

Los atributos pueden ser de un solo valor o de varios valores. Un atributo único es un atributo que solo puede tener un valor. Por ejemplo, un TIN puede tener un valor único para cada persona. Los atributos de un solo valor no son necesariamente simples. Por ejemplo, el número de serie 78-03-06-137846 es un atributo único, pero al mismo tiempo es un atributo compuesto, porque se puede dividir en la región en la que se produjo el producto (78), código de ciudad (03), turno de fabricación (06), número de producto (137846).

Un atributo multivaluado es un atributo que puede tener múltiples valores. Por ejemplo, una persona puede graduarse de varias universidades, tener varios números de teléfono.

En un DBMS relacional, no se pueden usar atributos multivaluados. Si hay atributos de valores múltiples, entonces es necesario crear varios atributos nuevos dentro de esta entidad o crear una nueva entidad que consista en los componentes de un atributo de valores múltiples.

Un atributo derivado es un atributo que no necesita ser almacenado en la base de datos, se obtiene usando algún algoritmo. Por ejemplo, la edad de un empleado se puede obtener como un valor entero de la diferencia entre la fecha actual y la fecha de nacimiento.

1.5.3. Conexiones

Las relaciones son asociaciones. Las entidades que participan en una relación se denominan participantes. Se puede utilizar un verbo o un documento como nombre de enlace. Por ejemplo, un departamento es administrado por un empleado, los bienes se reciben sobre la base de un contrato concluido, etc.

Las relaciones entre entidades en una proporción cuantitativa pueden ser "uno a uno", "uno a muchos". El término "conectividad" se utiliza para designar los tipos de conexiones.

La cardinalidad expresa un cierto número de instancias de entidad asociadas con una instancia de entidad asociada. En el diagrama ER, no se indica la fuerza de la conexión, pero en la programación de aplicaciones, la información sobre los números máximo y mínimo de instancias de entidad puede ser útil. Por ejemplo, un grupo no puede iniciar clases si tiene menos de 10 alumnos.

Las relaciones se establecen entre entidades. Si una entidad depende de la existencia de una o más entidades, entonces depende de la existencia. Por ejemplo, si los empleados tienen dependientes, entonces para el cálculo de impuestos, puede establecer la relación "empleado tiene dependientes". En este caso, la entidad dependiente depende de la entidad empleado.

Si una entidad puede existir fuera de otras entidades, entonces es independiente de la existencia. Por ejemplo, la entidad "parte" puede existir independientemente de la entidad "proveedor".

Si una entidad es independiente de la existencia de otra entidad, la relación entre ellas se denomina relación débil o relación no identificable. Los lazos débiles ocurren cuando la clave principal de la entidad relacionada no contiene los componentes principales de la entidad principal. Por ejemplo, hay dos entidades CURSO (curso) y CLASE (grupo), descritas como

CURSO ( CÓDIGO CRS, DEPT_CODE,…)

CLASE( CÓDIGO DE CLASE, CRS_CÓDIGO,…)

Hay una conexión débil entre estas entidades, porque el atributo CLASS_CODE es la clave principal de la entidad CLASS, mientras que el atributo CRS_CODE de la entidad CLASS es la clave externa. La clave principal de la entidad CLASE no hereda el componente de clave principal de la entidad CURSO. Un eslabón débil se representa en el diagrama ER mediante una línea discontinua.

Una relación fuerte, también llamada relación de identificación, ocurre cuando las entidades relacionadas dependen de la existencia. Una relación sólida entre dos entidades se produce cuando la clave principal de la entidad relacionada contiene el componente de clave principal de la entidad principal. Por ejemplo, entidades

CURSO ( CÓDIGO CRS, DEPT_CODE,…)

CLASE( CRS_CÓDIGO, SECCIÓN DE CLASE,…)

Tienen una fuerte conexión, porque la clave compuesta de la entidad CLASE incluye la entidad CURSO primaria. En el diagrama ER, los lazos fuertes se muestran como una línea continua.

Tenga en cuenta que el orden en que se crean y cargan las tablas es significativo. Para datos, por ejemplo, es imposible que la clave externa de la tabla CLASS se refiera a una tabla COURSE que aún no existe. El problema después de la secuencia de creación de tablas en algunos DBMS no ocurre hasta que se cargan los datos. En una relación 1:M, el lado "1" debe cargarse, independientemente de si es fuerte o débil, para evitar violaciones de integridad a nivel de enlace.

La participación de una entidad en una relación puede ser obligatoria u opcional. La participación de la entidad es opcional si una instancia de entidad no requiere una instancia de entidad correspondiente en una relación separada. Por ejemplo, en una conexión de curso (CURSO) se crean grupos (CLASE) al menos en algunos cursos puede no haber grupos creados. Aquellos. una instancia de entidad (fila) en la tabla COURSE no requiere una instancia de entidad correspondiente en la tabla CLASS. Por lo tanto, la entidad CLASE se considera opcional con respecto a la entidad CURSO. Una relación opcional en un diagrama ER se muestra como un pequeño círculo en el lado de la entidad opcional. La existencia de un opcional indica que para la entidad opcional min, el valor de la potencia del enlace es 0.

La participación de una entidad en una relación es obligatoria si una instancia de entidad requiere necesariamente una instancia de entidad correspondiente en una relación separada. Si no se muestra ningún símbolo adicional cerca de la entidad, esto significa que esta entidad participa en una relación obligatoria con una entidad relacionada. La cardinalidad mínima para una entidad requerida es 1.

a) La entidad CLASE es opcional para la entidad CURSO

b) Entidades COURE y CLASS en relación obligatoria.

Figura 1.25. Representación de relaciones obligatorias y opcionales en el modelo ER.

En términos de diseño de bases de datos, la existencia de una fuerte relación entre una entidad matriz y su entidad o entidades asociadas está asociada con entidades débiles.

Una entidad débil es una entidad que cumple dos condiciones:

condición de dependencia de la existencia, i.e. no puede existir sin la entidad con la que está asociado;

su clave principal se deriva parcial o totalmente de la entidad matriz de esta relación.

En el modelo ER, las entidades débiles están representadas por pequeños segmentos en cada una de las cuatro esquinas del rectángulo de la entidad.

Arroz. 1.26. Entidad débil en diagramas ER.

Una entidad débil hereda todas las partes de la clave principal de su socio de relación fuerte. Es el diseñador de la base de datos quien decide si una entidad debe ser declarada débil o no.

El grado de relación indica el número de entidades asociadas. Una relación unaria existe cuando una asociación se mantiene dentro de una sola entidad. Una relación binaria existe cuando dos entidades están asociadas. Una relación ternaria ocurre cuando tres entidades están conectadas. Aunque existen grados más altos de conexión, son bastante raros y no tienen nombres especiales.

Si una entidad tiene vínculos consigo misma, dicho vínculo se denomina recursivo.

Arroz. 1.27. Representación ER de una relación recursiva

La jerarquía de generalización muestra las relaciones padre-hijo. En el contexto de las bases de datos relacionales, una jerarquía de vista genérica muestra las relaciones entre los supertipos de entidad de nivel superior y los subtipos de entidad de nivel inferior. Aquellos. el supertipo contiene atributos compartidos mientras que el subtipo contiene atributos únicos.

Arroz. 1.28. Jerarquía de representaciones generalizadas.

Las relaciones se heredan, es decir, Un subtipo de entidad hereda atributos y relaciones de un supertipo de entidad. Por ejemplo, todos los pilotos, mecánicos y contadores tienen números de personal, nombres completos, domicilios, etc., pero pueden tener atributos exclusivos de su especialidad. En otras palabras, un supertipo de conjunto de entidades generalmente se asocia con varios subtipos de conjuntos de entidades únicos y que no se superponen. Dichos enlaces que no se superponen se indican con la letra 'G'.

El supertipo y subtipo(s) mantienen una relación 1:1. Por ejemplo, la estructura de la tabla EMPLEADO se puede reemplazar por dos tablas, una que representa el supertipo EMPLEADO y la otra un subtipo PILOTO.

Algunos supertipos contienen subtipos superpuestos. Por ejemplo, algún empleado puede ser maestro, pero al mismo tiempo administrador.

Los enlaces que se cruzan se muestran como 'G'.

Arroz. 1.29. Una jerarquía de representaciones genéricas con subtipos superpuestos.

Uno de los medios más populares de representación formalizada del área temática de los sistemas centrados en el procesamiento de información fáctica es el modelo entidad-relación, que es la base de un número significativo de productos comerciales CASE que respaldan el ciclo completo de desarrollo de sistemas de bases de datos o sus etapas individuales. Al mismo tiempo, muchos de ellos no solo soportan la etapa de diseño conceptual del área temática del sistema que se está desarrollando, sino que permiten realizar la etapa de diseño lógico en base al modelo construido por sus medios. generando automáticamente un esquema de base de datos conceptual para el DBMS seleccionado, por ejemplo, un esquema de base de datos para algún servidor SQL u objeto DBMS.

El modelado de dominio en este caso se basa en el uso de diagramas gráficos, que incluyen una cantidad relativamente pequeña de componentes y, lo que es más importante: tecnología de construcción tales diagramas.

La base semántica del modelo ER son los siguientes supuestos:

esa parte del mundo real (un conjunto de objetos interconectados), cuya información debe colocarse en la base de datos, puede ser presentado como totalidad entidades;

cada entidad tiene propiedades características (atributos) que la distinguen de otras entidades y le permiten identificar;

las entidades se pueden clasificar por tipos de entidad: cada instancia de una entidad (que representa algún objeto) se puede asignar a clase - tipo de entidad, cada instancia de la cual tiene propiedades comunes a ellos y distinguiéndolos de las entidades de otras clases;

La sistematización de la representación basada en clases, en el caso general, implica una dependencia jerárquica de los tipos: la esencia del tipo. PERO es subtipo entidades A, si cada instancia de tipo PERO es una instancia de una entidad de tipo A;

Las relaciones entre objetos se pueden representar como conexiones - entidades, que sirven para fijar (representar) la interdependencia de dos o más entidades.

Aquí es necesario enfatizar una vez más el carácter informativo del concepto esencia y su relación con objetos materiales o imaginarios del área temática. Cualquier objeto del área temática tiene propiedades, algunas de las cuales se destacan como características, significativas desde el punto de vista de la tarea aplicada. Al mismo tiempo, por ejemplo, en el proceso de análisis y sistematización del área temática, clases- colecciones de objetos que tienen el mismo conjunto de propiedades especificadas en el formulario conjuntos de atributos(los valores de los atributos para objetos de la misma clase, por supuesto, pueden diferir). En consecuencia, en el nivel de representación del área temática (es decir, su modelo infológico), el objeto considerado como concepto (un objeto en la mente humana) corresponde al concepto esencia; objeto, como parte del mundo material (y existiendo independientemente de la conciencia humana), corresponde al concepto instancia de entidad; la clase de objetos corresponde al concepto tipo de entidad.


En el futuro, dado que el modelo infológico no considera instancias individuales de objetos, sino clases, no distinguiremos entre los conceptos correspondientes de estos dos niveles, es decir, asumiremos la identidad de los conceptos. un objeto y entidad, propiedad del objeto y propiedad de la entidad.

modelo de emergencias, como descripción del área temática, debe definir objetos y relaciones entre ellos, es decir, establecer vínculos de los dos tipos siguientes.

1. Enlaces entre objetos y conjuntos de propiedades características, y así definir los propios objetos.

2. Relaciones entre objetos que determinan la naturaleza y el carácter funcional de su interdependencia.

Como se señaló anteriormente, el modelado ER del área temática se basa en el uso de diagramas gráficos, como una forma simple (familiar), visual y al mismo tiempo informativa y multidimensional de mostrar los componentes del proyecto. Por lo tanto, la presentación de las principales disposiciones del modelo ER se ilustrará con el material del ejemplo del diagrama ER que se muestra en la Fig. 5.4.

Esencia. Una entidad mediante la cual se modela una clase de objetos similares se define como "un elemento que se puede identificar claramente". Así como cada objeto se caracteriza únicamente por un conjunto de valores de propiedad, una entidad debe determinado asi que conjunto de atributos lo que permitiría distinguir entre instancias individuales de una entidad. Cada instancia de una entidad debe ser distinta de cualquier otra instancia de la misma entidad (este requisito es similar al requisito de que no haya tuplas duplicadas en las tablas relacionales). Por ejemplo, para identificar de forma única cada instancia de la entidad "Empleado", se introduce el atributo "Número de personal", que por su naturaleza siempre tendrá un valor único dentro de la empresa. Es decir, el identificador único de una entidad puede ser un atributo, una combinación de atributos, una combinación de relaciones o una combinación de relaciones y atributos que distingue de manera única cualquier instancia de una entidad de otras instancias de una entidad del mismo tipo.

entidad tiene nombre,único dentro del modelo. Donde nombre de la entidad - esto es escribe un nombre, no algún caso particular.

Las entidades se dividen en fuerte y débil. Una entidad es débil si su existencia depende de otra entidad que es fuerte en relación con ella. Por ejemplo, la entidad "Esclavo" es débil en relación con a entidad "Empleado": si se elimina el registro correspondiente a algún empleado que tiene subordinados, entonces también se debe eliminar la información sobre la subordinación.

Propiedades. propiedades de la naturaleza como la naturaleza de la relación las propiedades con una entidad (objeto) pueden ser diferentes. Considere los principales tipos de propiedades.

La propiedad puede ser múltiple o único - es decir, un atributo que define una propiedad puede tener varios valores al mismo tiempo o, en consecuencia, solo uno. Por ejemplo, un empleado puede tener varias especialidades, pero el único valor es "Número de personal".

La propiedad puede ser simple(no sujeto a una mayor división en términos de tareas aplicadas) o compuesto - si su valor está compuesto por los valores de propiedades simples. Por ejemplo, la propiedad "Año de nacimiento" es simple y la propiedad "Dirección" es compuesta, ya que incluye los valores de las propiedades simples "Ciudad", "Calle", "Casa".

En algunos casos es útil distinguir básico y derivados propiedades. Por ejemplo, un "Proveedor" puede tener una propiedad de "Cantidad total de piezas para suministrar", que se calcula sumando la cantidad de piezas que suministra para el proyecto.

Si no se requiere la presencia de alguna propiedad para todas las instancias de una entidad, entonces tal propiedad se llama condicional. Por ejemplo, no todos los empleados tienen el atributo "título".

Los valores de propiedad pueden ser constantes - estático o dinámica, es decir, cambiar con el tiempo. Por ejemplo, la propiedad Número de personal es estática, mientras que la propiedad Dirección es dinámica. La propiedad puede ser indefinido, si es dinámico pero aún no se ha establecido su valor actual.

La propiedad puede ser vista como llave, si su valor es único y posiblemente, en un determinado contexto, identifica de forma única a una entidad. Por ejemplo, un subordinado de algún empleado específico.

Conexiones. Además de los vínculos entre el objeto y sus propiedades, el modelo infológico refleja los vínculos entre objetos de diferentes clases. A conexión se define como "una asociación que reúne a múltiples entidades". Esta asociación siempre puede existir entre diferentes entidades o entre una entidad y ella misma (relación recursiva).

Como una entidad, una relación es típico concepto, es decir, todas las instancias de entidades vinculadas obedecen las reglas de vinculación de tipos. La diferencia fundamental entre los tipos de relaciones entre tipos e instancias se ilustra mediante diagramas ER para tipos e instancias, que se muestran en la fig. 5.5.

Las entidades conectadas por una relación se llaman Participantes. Grado de conexión determinada por el número de participantes en la comunicación.

Si cada instancia de una entidad participa en al menos una instancia de una relación, entonces dicha participación de esta entidad se llama completo(o obligatorio); de lo contrario - incompleto(o opcional).

Se especifica el carácter cuantitativo de la participación de instancias de entidad (una o varias) tipo de conección(o poder de comunicación) Los siguientes tipos son posibles: "cara a cara"(1:1), "uno a muchos"(1M), "muchos a uno"(M:1), "muchos a muchos"(MM).

Cabe señalar que la herramienta de enlace es un medio para representar objetos complejos, cada uno de los cuales puede verse como un conjunto de interconectados de alguna manera objetos simples La división en objetos simples y complejos, así como la naturaleza de la relación, es condicional y está determinada por las características del análisis del área temática, es decir, en definitiva, por la naturaleza del uso de estos objetos en los problemas aplicados que se resuelven. Al mismo tiempo, desde el punto de vista de, por ejemplo, el constructor, los DETALLES son un objeto complejo, y desde el punto de vista del proveedor, es simple.

Entre los muchos tipos de relaciones, las más frecuentes son relaciones de tipo jerárquico como "parte - todo", "género - especie".

La relación parte-todo se utiliza para representar objetos compuestos. Por ejemplo, las MÁQUINAS consisten en PARTES, las PARTES consisten en PARTES. Aquí son posibles como relaciones "uno a muchos" asi que "muchos a muchos".

Relación género-especie - para presentación objetos generalizados. Por ejemplo, los EMPLEADOS se dividen por profesión en DISEÑADORES, PROGRAMADORES, TRABAJADORES; PROGRAMADORES - para PROGRAMADORES APLICADOS y PROGRAMADORES DE SISTEMAS. Las relaciones jerárquicas y, en particular, "género-especie", generalmente se utilizan como base para clasificar objetos de acuerdo con conjuntos de rasgos característicos. Además, los objetos de "especies" heredar propiedades genéricas.

Otro tipo de relación ampliamente utilizado es la agregación: la unión de objetos simples en uno complejo según el principio de su pertenencia. agregar o su participación conjunta en algún proceso. La agregación, considerada aquí como un caso más general de relaciones jerárquicas, combina objetos de diferente naturaleza con la única propiedad común "compartir". Los objetos agregados generalmente se llaman sustantivos verbales, por ejemplo, "Compuesto": SUBDIVISIÓN comprende EMPLEADOS; "Suministro": PROVEEDOR suministros DETALLES.

supertipos y subtipos. Una entidad puede dividirse en dos o más, mutuamente excluyentes subtipos cada uno de los cuales incluye atributos y/o relaciones comunes. Estos atributos y/o relaciones comunes se definen explícitamente una vez en un nivel superior. Los subtipos pueden definir sus propios atributos y/o relaciones. En principio, la subtipificación puede continuar en niveles más bajos, pero en la mayoría de los casos dos o tres niveles son suficientes.

La entidad a partir de la cual se definen los subtipos se denomina supertipo Los subtipos deben formar un conjunto completo, es decir, cualquier instancia de un supertipo debe pertenecer a algún subtipo. A veces, para completar el conjunto, es necesario definir un subtipo adicional, por ejemplo, OTROS.

El subtipo hereda las propiedades y relaciones del supertipo. Por ejemplo, tipo de entidad PROGRAMADOR es un subtipo de una entidad EMPLEADO. Los programadores tienen todas las propiedades de los empleados y participan en todas las relaciones, pero lo contrario no es cierto.

Un tipo de entidad, sus subtipos, subtipos de estos subtipos, etc. forman jerarquía de tipo de entidad, un ejemplo del cual se muestra en la Fig. 5.6.

El modelo conceptual de una base de datos es

Un modelo conceptual es una especie de diagrama visual dibujado en la notación aceptada y que muestra en detalle la relación entre los objetos y sus características. Se crea un modelo conceptual para el diseño posterior de la base de datos y su traducción, por ejemplo, en una base de datos relacional. Las relaciones entre los objetos de datos y sus características se escriben en el modelo conceptual de una manera visualmente conveniente.

Definiciones aceptadas en la base de datos conceptual

Para la uniformidad de la programación de bases de datos, se han introducido los siguientes conceptos para las bases de datos conceptuales:

  1. Objeto o entidad. Esta es la cosa u objeto real (para las personas) que el usuario (cliente) desea observar. Por ejemplo, Ivanov Ivan Ivanovich;
  2. Atributo es una característica de un objeto correspondiente a su esencia. Por ejemplo. Nos hacemos la pregunta: ¿Qué información se debe mantener sobre Ivanov Ivan Ivanovich? Las respuestas a esta pregunta serán los atributos del objeto Ivanov Ivan Ivanovich;
  3. El tercer concepto en el diseño de bases de datos conceptuales es conexión o relación entre objetos.

Léxicamente, es más correcto decir la relación entre objetos CDB y la relación entre entidades CDB (base de datos conceptual), pero puedes encontrar una variedad de combinaciones de entidad, objeto, conexión y relación (fallas de traducción).


Convención de modelo de base de datos conceptual

Modelo de base de datos conceptual: símbolos gráficos aceptados

Un diagrama entidad/relación (objeto/relación) se denomina diagrama ER o EDR (diagrama entidad-relación). El modelo entidad-relación en sí mismo fue propuesto por el profesor Peter Pin-Shen Chen en 1976. Las reglas y convenciones de escritura de un diagrama ER se denominan notación. Hay dos notaciones principales para los diagramas ER que son comunes:

  • Notación de Peter Chen;
  • Notación Gordon Everest (Gordon Everst). Bajo el nombre de Pata de Gallo o Tenedor (tenedor).

Notación del diagrama ER de Peter Chen

Chen propuso y adoptó las siguientes convenciones para los diagramas ER:

  • Una entidad u objeto se denota por un rectángulo;
  • Las relaciones se indican con un diamante;
  • Los atributos de los objetos se indican mediante un óvalo;
  • Si una entidad está asociada con una relación, entonces su relación se indica mediante una línea recta con una flecha. Una relación opcional se indica mediante una línea de puntos. Una conexión fuerte se indica mediante una línea doble.

Cada atributo se puede asociar con un objeto (entidad).

Notación Gordon Everest

Gordon Everest introdujo una nueva designación de conexiones, que se llamaron tenedor o pata de gallo. También introdujo que un objeto debe ser denotado por un rectángulo con el nombre del tipo de objeto como un sustantivo dentro del rectángulo. Además, este nombre debe ser único dentro de la base de datos creada.

Los atributos no se separan en una figura separada, sino que encajan en el rectángulo del objeto con un nombre sustantivo con una palabra calificadora.

La relación entre los objetos se indica mediante una línea recta. Los enlaces múltiples se indican con una bifurcación al final. El enlace en sí está firmado con un verbo, como "Incluye" o "Pertenece".


Modelo conceptual de la base de datos ERD Fork

Complementos

Los atributos en un diagrama ER pueden tener su propio atributo (compuesto).

Es bastante fácil dibujar un diagrama ER simple. Otra cosa es un diagrama ER rico y voluminoso. A continuación, se incluyen algunos consejos para ayudarlo a crear esquemas de ER efectivos:

  • Identificar todos los objetos en un sistema dado y definir las relaciones entre estos objetos;
  • Un objeto debe aparecer solo una vez en una ubicación particular en el esquema;
  • Defina un nombre exacto y apropiado para cada objeto, atributo y relación en el diagrama. Elige palabras sencillas y comprensibles. Los términos que son simples y familiares siempre ganan a las palabras vagas que suenan técnicas. Para objetos, los sustantivos son sustantivos, para enlaces, verbos (posible con explicaciones). No se olvide de la singularidad de los nombres de los objetos;
  • Eliminar relaciones implícitas, redundantes o innecesarias entre objetos;
  • Nunca conecte relaciones con otras relaciones;
  • Utilice colores para clasificar objetos del mismo tipo o resaltar áreas clave en un diagrama.

Me gustaría hacer una pequeña adición a los artículos Desarrollo → Relaciones de tablas de bases de datos y Desarrollo → Diseño de bases de datos por habravchanin ueasley.

Quiero describir las reglas mediante las cuales puede construir un esquema de base de datos relacional. Estas reglas, probablemente, sean de poca utilidad para cualquiera, ya que son utilizadas por los desarrolladores a un nivel intuitivo, pero son interesantes incluso porque formalizan el proceso de construcción de un esquema de base de datos.

Estas reglas se aplican al modelo ER, es decir, al modelo entidad-relación.

modelo de emergencia

El modelo ER es un esquema, cuyos elementos constitutivos son:

  • Esencia- este es un objeto real o imaginario, cuya información debe almacenarse en la base de datos. En el diagrama del modelo ER, una entidad se representa como un rectángulo que contiene el nombre de la entidad.
  • Conexión- una asociación mostrada gráficamente en un diagrama entre dos (más a menudo) entidades, o entre la misma entidad (relación recursiva). La conexión está representada por un diamante, en el que se destacan dos extremos, uno para cada entidad. Para cada lado de esta conexión se establece lo siguiente:
    1. Grado de asociación: cuántas instancias de una entidad dada están asociadas
    2. Relación obligatoria - si esta entidad debe necesariamente participar en la relación.
Daré un ejemplo:
Supongamos que es necesario almacenar información sobre los clientes y sus pedidos. Construyamos un diagrama

Tenga en cuenta que desde el lado de la entidad "PEDIDO", la relación se indica mediante un rectángulo adicional: esta es una designación de que cada instancia de la entidad "PEDIDO" corresponde a una instancia de la entidad "CLIENTE" (para un cliente, un el pedido no es necesario). El grado "M" significa que para cada instancia de la entidad "CLIENTE" puede haber varias instancias de la entidad "PEDIDO" (pero no al revés, ya que siempre hay un solo cliente para cada pedido; establecemos el grado "1 ")

Una relación (normalmente correspondiente a una tabla en una base de datos) no debe confundirse con una entidad. Una entidad se convierte en una relación al separarla del diagrama ER.

Etapas de diseño

  1. Diseño conceptual

    Se construye un diagrama ER, que incluye todas las entidades y relaciones. Obtenemos un modelo conceptual (infológico). Debe entenderse que dicho modelo puede estar lejos de corresponder a la estructura relacional de la base de datos que se está diseñando.

    Suponga que necesita crear una base de datos en la que deberá almacenar información completa sobre pedidos, clientes, empleados. Para cada pedido, hay una lista de elementos de este pedido (varios artículos), cada uno de los cuales está asociado con una lista de materiales utilizados y operaciones realizadas.

    Tengo el siguiente diagrama.


    Arroz. 2

  2. diseño lógico

    Se construye un conjunto de relaciones preliminares, especificando la clave primaria para cada relación. Se compila una lista de atributos, luego estos atributos se distribuyen entre las relaciones. Es necesario que todas las relaciones permanezcan en la FNBC.

    La transición a una estructura relacional (construcción de un conjunto de relaciones) se lleva a cabo de acuerdo con las siguientes reglas:

    1. Si el grado de relación binaria es 1:1 y se requiere la clase de membresía de ambas entidades, entonces solo se requiere una relación. La clave primaria de esta relación puede ser la clave de cualquiera de estas dos entidades. En este caso, se garantiza que cada valor clave aparecerá una vez en cualquier instancia de la relación.
    2. Si el grado de una relación binaria es 1:1 y la clase de una de las entidades es opcional, entonces es necesario construir dos relaciones y se debe asignar una relación para cada entidad. La clave de una entidad para la cual la clase de membresía es opcional se agrega como un atributo a la relación asignada a la entidad con la clase de membresía requerida.
    3. Si el grado de relación binaria es 1:1 y la clase de pertenencia de ninguna de las entidades es opcional, entonces se utilizan tres relaciones, una para cada entidad, cuyas claves sirven como primarias en las relaciones respectivas y una para la relación. La relación dedicada a la relación tendrá una clave de entidad de cada entidad.
    4. Si el grado de una relación binaria es 1:M y la clase de pertenencia de una entidad M-conectada es obligatoria, basta con utilizar dos relaciones: una para cada entidad, siempre que la clave de entidad sirva como clave primaria para la relación correspondiente. La clave de una entidad con enlace único debe agregarse como un atributo a la relación asignada a la entidad con conexión M.
    5. Si el grado de una relación binaria es 1: M y la clase de pertenencia de una entidad M-conectada es opcional, entonces se deben usar tres relaciones: una para la entidad y otra para la relación. Una relación debe tener entre sus atributos una clave de entidad de cada entidad.
    6. Si el grado de una relación binaria es M:M, entonces se necesitan tres relaciones para almacenar datos: una para la entidad y otra para la relación. Las claves de entidad se incluyen en la relación. Si una de las entidades es degenerada, entonces, dos relaciones (es decir, dos tablas serán suficientes).
    7. En el caso de una relación de tres vías, se deben utilizar cuatro relaciones: una para la entidad y otra para la relación. La relación generada por la conexión tiene entre los atributos las claves de entidad de cada entidad.

    Usemos las reglas, resumamos los datos en una tabla.

    esencias Número de regla Relaciones
    Cliente
    Ordenar
    4 Cliente(#Cliente
    Pedido(#Pedido, #Cliente
    Empleado
    Ordenar
    4 Empleado(#Empleado
    Pedido(#Pedido, #Empleado
    Ordenar
    Elemento de orden
    4 Orden orden
    Elemento de pedido(#Elemento de pedido, #Pedido
    brigada
    Elemento de orden
    4 Brigada(#Brigada
    Artículo de pedido (#Artículo, #Brigada
    Producto
    Elemento de orden
    4 Producto(#Productos
    Artículo de pedido (#Artículo, #Productos
    Cliente
    Ordenar
    6 Cliente(#Cliente
    Orden orden
    Pago(#Pago, #Cliente, #Pedido
    brigada
    Empleado
    5 Brigada(#Brigada
    Empleado(#Empleado
    Empleado de brigada(#Empleado de brigada, #Empleado, #Brigada
    Elemento de orden
    Operación
    5 Artículo de pedido (#Artículo
    Operación(#Operaciones
    Registro de operaciones (#Registros, #Elemento, #Operaciones
    Elemento de orden
    Material
    5 Artículo de pedido (#Artículo
    Material(#Material
    Consumo(#Registros, #Elemento, #Material
    Pestaña. una

    Habiendo distribuido los atributos de acuerdo con las relaciones obtenidas, obtenemos (en la lista de campos en primer lugar, la clave principal, el resto, marcados con "#", son claves externas):

    Brigada (#Brigadas, #Capaz, Ubicación)
    TÍTULO PROFESIONAL (#Puestos, Cargo, Salario)
    ORDENAR (#Pedido, #Cliente, #Empleado, Fecha de lugar, Fecha solicitada, Fecha de vencimiento, Descripción)
    CLIENTE (# de cliente, título, nombre, apellido, organización o departamento, dirección, número de teléfono, dirección de correo electrónico)
    OPERACIÓN DE REGISTRO (#Registros, #Artículo, #Operaciones, #Empleado, Cantidad)
    PAGO (#Pago, #Cliente, #Pedido,ImportePago,FechaPago, Notas)
    CONSUMO (#Registros, #ExpoMat, #Elementos, Cantidad)
    COMPUESTO (#Artículo, #Pedido, #Producto, #Equipo, Cantidad)
    SOTRBRIGADA (#StrBrigade, #Brigade,#Empleado)
    EMPLEADO (# de Empleado, Número de Pasaporte, Apellido, Nombre, Patronímico, # Cargos, Dirección, Teléfono de Casa, Teléfono de Trabajo, Fecha de Nacimiento, Fecha de Empleo, Fecha de Término de Contrato, Foto, Notas)
    OPERACIÓN (#Operaciones, Descripción, Costo, Tiempo, Equipo, Ejecución)
    MATERIAL (#ExpoMat, NaimExpoMat, Precio, Densidad, Tipo, Composición)
    PRODUCTO (N.° de artículo, Marca, Nombre, Descripción del artículo, Tipo, Número de serie, En stock, Precio)
    Pestaña. 2

Así nos enseñaron a hacerlo en la universidad. Tal vez a alguien le interese. Sobre "es necesario", escucho sus opiniones!



Continuando con el tema:
ventanas

Natalya Komarova, 28/05/2009 (25/03/2018) Cuando lees un foro o un blog, recuerdas a los autores de las publicaciones por su apodo y... por la imagen del usuario, el llamado avatar...