modelo entidad-relación · 2 modelo entidad-relación •es un modelo conceptual y se utiliza para...
TRANSCRIPT
![Page 1: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/1.jpg)
1
Modelo Entidad-Relación
MER
![Page 2: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/2.jpg)
2
Modelo Entidad-Relación
• Es un modelo conceptual y se utiliza para la
definición de datos.
• Se basa en representar objetos (entidades) y
relaciones entre esos objetos.
• Describe el esquema en términos de conjuntos
de entidades y relaciones entre esos conjuntos.
• Permite declarar restricciones sobre las
relaciones como sobre los conjuntos de
entidades.
• Tiene un DDL gráfico. No tiene DML standard.
![Page 3: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/3.jpg)
3
Entidades y Atributos
• Una ENTIDAD es un objeto distinguible de la
realidad en estudio.
Las entidades se agrupan en conjuntos de
entidades.
• Un ATRIBUTO es una función tal que dado
un elemento de un determinado conjunto de
entidades es capaz de devolver un valor de
un determinado conjunto de valores, llamado
dominio del atributo.
![Page 4: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/4.jpg)
4
Diagrama de Entidad-Relación
• Los Conjuntos de Entidades se representan con un rectángulo con el nombre, del que “cuelgan” los atributos.
• Los Conjuntos de Relaciones se representan con un rombo con el nombre, conectado con los conjuntos de entidades que relaciona.
• Hay un conjunto de Restricciones que se pueden imponer sobre el diagrama con diferentes notaciones.
![Page 5: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/5.jpg)
5
Entidades
Esquema Instancia
Estudiantes
Cédula
Dirección
Estudiantes
Dom. Cédula
1.987.645
1.999.756
Dom. Dirección
Mercedes 3456
Soriano 728
![Page 6: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/6.jpg)
6
Tipos de Atributos
Atributos Estructurados:
Permiten representar
atributos compuestos, que
están formados por varias
partes independientes.
Funcionario
Direccion Ciudad Vivienda
Calle Número
Atributos Multivalorados:
Son funciones que
devuelven un conjunto de
valores pertenecientes a un
dominio dado. 0 Teléfonos*
Funcionario
![Page 7: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/7.jpg)
7
Relaciones
Esquema Instancia
Estudiantes Estudiantes
Curso
Inscriptos
N
N
Cursos
Inscriptos
![Page 8: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/8.jpg)
8
Restricciones
Restricciones sobre Conjuntos de Entidades :
Se dice que un atributo es Determinante cuando no
pueden existir en el conjunto de entidades, dos
entidades que tengan el mismo valor para ese
atributo.
Funcionario
NroFuncionario
![Page 9: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/9.jpg)
9
Restricciones (cont.)
Restricciones sobre Relaciones
Pueden ser sobre 1) la Cardinalidad,
2) la Totalidad,
3) Restricciones no estructurales.
Estudiante Curso Inscripción N 5
Examen
N N
( xEstudiante)( y Curso), ((x,y) Examen (x,y) Inscripción)
![Page 10: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/10.jpg)
10
Cursos Estudiantes Inscriptos
Cardinalidad de las relaciones
N:N
N:1
Cursos Estudiantes Inscriptos
Cardinalidades
Máximas
![Page 11: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/11.jpg)
11
Atributos de relaciones
Se tiene información acerca de materiales y proveedores
indicando que material provee cada proveedor.
Del material se conoce el código, el nombre y una descripción.
Del proveedor se conoce su RUC, su nombre y su dirección.
Cualquier material puede ser provisto por cualquier proveedor.
Se sabe además que no hay dos materiales con el mismo
código.
¿Cómo se representa esta realidad?
El precio al que cada proveedor vende cada producto,
¿Es un atributo de proveedor?
¿Es un atributo de materiales?
![Page 12: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/12.jpg)
12
Atributos en relaciones
• Las relaciones pueden tener atributos.
– Se representan igual que los atributos de las entidades.
– Tienen el mismo significado: Funciones que van del
conjunto de parejas de la relación en un dominio dado.
Estudiantes Curso Inscriptos
Nota
No afecta el cálculo de Cardinalidad !
![Page 13: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/13.jpg)
13
Ejemplo
Hay un conjunto de cines de los que se conoce el nombre y la
ciudad y se asume que la pareja nombre-ciudad identifica al
cine.
Existe también un conjunto de películas que se exhiben en los
cines y de las que se conoce un código que las identifica y un
nombre.
La exhibición de las películas en cada cine corresponde a una
función correspondiente a cierta fecha y hora.
¿Cómo se representa esta realidad?
![Page 14: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/14.jpg)
14
Auto-relaciones
En una empresa, existen funcionarios y se sabe que unos
funcionarios son jefes de otros.
Un jefe es jefe de varios funcionarios y un subordinado es
controlado por un único jefe.
¿Cómo se representa esta realidad?
Se llama Papel o Rol al rótulo que identifica que función
cumple una determinada entidad en una auto-relación.
![Page 15: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/15.jpg)
15
Relaciones Múltiples
Una empresa de construcción realiza a partir del
diseño de sus proyectos documentos de
requerimientos de materiales. Todo requerimiento da
origen a uno o más pedidos de compras.
Se desea modelar qué requerimientos originan qué
pedidos de compras solicitando determinados
materiales.
Material Requerimiento
Pedido
M-R-P
![Page 16: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/16.jpg)
16
Relaciones Múltiples (otro ejemplo)
Un cliente puede tener varias cuentas, cada una situada en una única
sucursal del banco, donde una cuenta puede pertenecer a varios clientes
distintos.
Cuenta
Num Saldo Sucursal
Cod Ciudad
Cta-Cli-Suc Cliente
Nom Cédula
Dir
Cardinalidades: Considerar M-1 entidades
como una sola y ver, “dado uno de estos”
con cuantos de la otra se pueden relacionar?
N
1
N
![Page 17: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/17.jpg)
17
¿Cuál es la diferencia con esta otra representación?
Cliente Cuenta
Num Saldo
Cta-Cli N N
Nom Cédula
Dir
Suc-Cta Sucursal
Cod Ciudad
1
N
Relaciones Múltiples (otro ejemplo)
![Page 18: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/18.jpg)
18
Categorizaciones
• Permite expresar que hay conjuntos de entidades que son subconjuntos de otros conjuntos de entidades.
Funcionario
Adm. Técnico
Idioma* Esp.*
NumFunc
Chofer
Cant-Acc Libreta
Se asumen
disjuntas.
Podría tener más
entidades que la
unión de las
categorías
![Page 19: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/19.jpg)
19
Categorizaciones (ejemplo)
Una empresa está dividida en varios departamentos de
los que se conoce un nombre que los identifica.
De los funcionarios de esa empresa se conoce número de funcionario, nombre y dirección. Si el funcionario es un chofer se conoce el número de libreta y la cantidad de accidentes que tuvo. Si es administrativo se conoce los idiomas que habla. Si es técnico se conoce las especialidades en que puede trabajar.
![Page 20: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/20.jpg)
20
La empresa tiene un conjunto de coches de los que se conoce la matrícula y la marca. Estos coches son conducidos por los choferes y a cualquier chofer se le puede asignar cualquier coche.
La empresa lleva adelante un conjunto de proyectos en los que trabajan los administrativos y que están controlados por departamentos.
Estos proyectos están identificados por un número de proyecto.
Categorizaciones (ejemplo cont.)
![Page 21: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/21.jpg)
21
Categorizaciones (ejemplo cont.)
Solución 1:
Departamento
Proyecto
Trabaja
Funcionario
Adm.
Técnico Chofer
1 1
1
Idiomas
Esp
Cant-Acc
NumFunc
NumFunc NumFunc
NumFunc
Libreta
Conduce
Coche
N
1
Matr.
![Page 22: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/22.jpg)
22
Solución 2:
Departamento
Proyecto
Trabaja
Funcionario
Adm. Técnico N N
N Idioma* Esp.*
NumFunc
Chofer
Cant-Acc Libreta
Conduce
Coche
N
Matrícula.
N
Categorizaciones (ejemplo cont.)
![Page 23: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/23.jpg)
23
Entidades Débiles
• Permiten expresar la dependencia de un conjunto de entidades con respecto a otro.
• Por eso: – Necesitan a la entidad fuerte para poder identificarse.
– No pueden existir en caso que no exista la correspondiente entidad fuerte.
Pertenece Salas Hospital N 1
Siempre es N:1 y total del lado débil
![Page 24: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/24.jpg)
24
Entidades Débiles (ejemplo)
La entidad Dependiente, relacionada con Empleado, sirve para llevar el control de los dependientes de cada empleado a través de una relación 1:N. Los atributos de Dependiente son: nombre, fechaNac, sexo y parentesco.
No puede existir un dependiente que no corresponda a algún empleado.
Dos dependientes de empleados distintos pueden tener el mismo conjunto de valores de atributos pero seguirán siendo entidades distintas.
Se podrán identificar como entidades distintas sólo después de determinar la entidad empleado con la cual están relacionadas.
![Page 25: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/25.jpg)
25
Entidades Débiles (ejemplo cont.)
¿Qué diferencias tiene esta otra representación?
Empleado
Nro.Emp Nombre Dependientes*
Nombre FechaNac Sexo Parentesco
Dependientes aquí no puede participar en ninguna otra relación que no sea la de dependencia con empleado.
![Page 26: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/26.jpg)
26
Entidades Débiles (otro ejemplo)
Para una cuenta determinada puede haber varios movimientos.
Cada entidad transacción debe estar asociada con una cuenta.
1
Si se suprime una cuenta deben suprimirse también todas sus transacciones, pero las transacciones pueden suprimirse sin afectar a ninguna cuenta. Aunque cada entidad transacción es distinta, las transacciones en cuentas diferentes pueden compartir el mismo código de transacción.
Cuenta Transacción Bitácora
Código Fecha Cantidad
N
Num Saldo
![Page 27: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/27.jpg)
27
Agregaciones
Limitación del MER:
No es posible expresar relaciones entre relaciones.
Ejemplo: Empleados trabajan en un proyecto determinado y usan varias máquinas en su trabajo.
N
Maquinaria
Trabaja
Usa
Cod
Empleado
Num Nombre N
N
N
Proyecto
Numero
N
![Page 28: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/28.jpg)
28
Agregación
Maquinaria
Trabaja
Usa
Cod
Empleado
Num Nombre
N
N
Proyecto
Numero
N
Trabajo
N
Abstracción que trata a las relaciones como una entidad.
![Page 29: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/29.jpg)
29
• Operador de “casting”. Cambia el “tipo” a la relación para poder relacionar entidades con ella.
Maquinaria
Trabaja
Usa
Cod
Empleado
Num Nombre
N
N
Proyecto
Numero
N
N Debe tener una única
relación y las
entidades que están
en la relación.
Agregaciones
![Page 30: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/30.jpg)
30
Opciones de Diseño
• ¿Entidades o relaciones?
• ¿Relación ternaria o par de relaciones
binarias?
• ¿Uso de entidades fuertes o débiles ?
• ¿Usar generalización?
• ¿Usar agregación?
![Page 31: Modelo Entidad-Relación · 2 Modelo Entidad-Relación •Es un modelo conceptual y se utiliza para la definición de datos. •Se basa en representar objetos (entidades) y](https://reader030.vdocuments.net/reader030/viewer/2022021609/5ba48cb209d3f2205e8d7ca8/html5/thumbnails/31.jpg)
31
¿Entidades o Relaciones?
Cuenta Sucursal Cliente
saldo Numero
N N
Cuenta
Sucursal Cliente
C-S-C
Numero
saldo
N N
N
Opción 1:
Opción 2: