1
Diseño de Bases de Datos
Modelo Entidad-Relación
INTEGRANTES:Jonathan Marmolejo VeraCristhian Alava TroyaJonathan Navarrete Cedeño
2
Modelo de datos conceptual de alto nivel Propuesto por Peter P. Chen en 1976
Extensiones/aportaciones de muchos otros autores» No existe un único MER, sino una FAMILIA DE
MODELOS
Describe el “mundo real” como un conjunto de ENTIDADES y de RELACIONES entre ellas
Gran difusión Muy extendido en los métodos de diseño de bases
de datos Soportado por herramientas software de diseño
(CASE)
Introducción e historia del modelo Entidad-Relación
3
En el proceso de diseño...
DISEÑO CONCEPTUAL
DISEÑO CONCEPTUAL
Requisitos de datos
EsquemaConceptual MER
Introducción e historia del modelo Entidad-Relación
4
Descripción concisa de los requisitos de información de los usuarios Descripciones detalladas de
TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementación Más fácil de entender Comunicación con el usuario no técnico
Esquema conceptual
Introducción e historia del modelo Entidad Relación
5
Conceptos básicos del modelo
Entidad ( entity ) Atributo ( attribute ) Dominio ( values set ) Relación ( relationship )
6
ENTIDAD Cosa u objeto del mundo real con
existencia propia y distinguible del resto
Objeto con existencia... física o real (una persona, un libro, un empleado) abstracta o conceptual (una asignatura, un viaje)
“Persona, lugar, cosa, concepto o suceso, real o abstracto, de interés para la empresa” (ANSI, 1977)
Conceptos básicos del modelo
7
ATRIBUTO Propiedad o característica de una entidad Una entidad particular es descrita por los
valores de sus atributos:titulo = El alquimista impacientegenero = Thrillernacionalidad = Españaañoestreno = 2002
p1
...
nss = 1122334455dni = 87654321
nombre = Cristina Aliaga Gilnacionalidad = España
e1
...
Conceptos básicos del modelo
8
TIPO DE ENTIDAD (entity set)
Define un conjunto de entidades que poseen los mismos atributosPELICULA: titulo, genero, nacionalidad, añoestreno,numcopiasEMPLEADO: dni, nss, nombre, fechanacim, direccion, telefono,
altura, nacionalidad, edad Notación
EMPLEADO
LOCALVIDEOCLUB
PELICULA DIRECTOR
ACTORCLIENTE
Conceptos básicos del modelo
9
Instancia de un tipo de entidad
También... Ocurrencia Realización Ejemplar Entidad concreta
o individual
PELICULA
titulo = El señor de los anillosgenero = Fantasíanacionalidad = EEUUañoestreno = 2001
p2
...
titulo = Ameliegenero = Comedianacionalidad = Franciaañoestreno = 2001
p4
...
titulo = Amores perrosgenero = Dramanacionalidad = Méjicoañoestreno = 1999
p3
...
Conceptos básicos del modelo
10
Intensión y Extensión
Un tipo de entidad describe el esquema o intensión para un conjunto de entidades que poseen la misma estructuraEMPLEADO: dni, nss, nombre, dirección, telefono, altura, fechanacim,
nacionalidad, edad Las instancias del tipo de entidad se agrupan en un
conjunto de entidades o extensióne1 (87654321, 1122334455, “Cristina Aliaga Gil”, “Libertad, 2. Yecla.
Murcia. 30510”, 968100200, 1’60, 28/07/1979, España, 23)e2 (12345678, 6677889900, “Antonio Gil Sánchez”, “Paz, 5. Murcia.
Murcia.30012”, 968111222, 1’76, 14/04/1944, España, 58)e3 (11223344, 1234567890, “Julia Sauce”, “Justicia, 20. Yecla. Murcia.
30510”, 968000222, 1’59, 23/05/1947, España, 55) ...
Conceptos básicos del modelo
11
Tipos de atributos
Simples o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales
Conceptos básicos del modelo
12
Atributos Simples o Compuestos
Atributos compuestos Pueden dividirse en otros con significado
propio
Valor compuesto = concatenación de valores de componentes
Atributos simples No divisibles. Atómicos
fechanacim
dia mes año
direccion
calle ciudad provincia codpostal
genero
Conceptos básicos del modelo
13
Atributos Almacenados o Derivados
Atributos derivados Valor calculado a partir de otra información ya
existente (atributos, entidades relacionadas) Son información redundante...
edad [de EMPLEADO], cálculo a partir de fechanacim atributo derivado del valor de otro atributo
numcopias [de una PELICULA], cuenta del número de entidades COPIA relacionadas con cada película concreta
atributo derivado de entidades relacionadas
Atributos almacenadosfechanacim [de cada EMPLEADO]nacionalidad [de una PELICULA]
Conceptos básicos del modelo
14
Atributos Monovalorados o Multivalorados
Atributos monovalorados (monovaluados) sólo un valor para cada entidad
fechanacim [de un EMPLEADO particular]
añoestreno [de cada PELICULA concreta]
Atributos multivalorados (multivaluados) más de un valor para la misma entidad
nacionalidad [ PELICULA coproducida por varios países ]
telefono [ EMPLEADO con varios teléfonos de contacto] pueden tener límites superior e inferior
del número de valores por entidadnacionalidad (1-2)telefono (0-3)
Conceptos básicos del modelo
15
Atributos Opcionales (nulos)
El nulo (null value) es usado cuando...
Se desconoce el valor de un atributo para cierta entidad
El valor existe pero faltaaltura [de un EMPLEADO]
No se sabe si el valor existe o no telefono [de un EMPLEADO]
La entidad no tiene ningún valor aplicable para el atributo:
fechaalquiler [PELICULA sólo en vídeo-venta (no alquiler)]
Conceptos básicos del modelo
16
Notación para atributos[EN2002] [MPM1999]
fechanacimdirección
telefono
calle provinciaciudadcodpostal
dni edad
altura
(0,3)
Dnss
nombre
nacionalidad
(1,2)
EMPLEADO(0,3)
dirección
(1,2)
(0,1)EMPLEADOnombre
fechanacim telefono
calleprovinciaciudad
codpostal
edadnss
dni
altura
nacionalidad
Conceptos básicos del modelo
17
Atributos Clave Atributo con valor distinto para cada
instancia de un tipo de entidaddni en EMPLEADO
Una clave identifica de forma única cada entidad concreta atributo identificador
NotaciónEMPLEADO
[EN2002]
EMPLEADO
dni
[MPM1999]
dni
Conceptos básicos del modelo
18
Atributos Clave (ii) Una clave puede estar formada por
varios atributos clave compuesta Combinación de valores distinta para cada
instancia(nombre, fechanacim) en el tipo de entidad EMPLEADO
Una clave compuesta debe ser mínima
Un tipo de entidad puede tener más de una clave claves candidatasClaves o Identificadores Candidatos de EMPLEADO: dni nss (nombre, fechanacim)
Conceptos básicos del modelo
19
Atributos Clave (iii) Atributo identificador principal (IP)
Clave Principal Elegido (por el diseñador) de entre los
identificadores candidatos (IC), para ser el medio principal de identificación de las instancias del tipo de entidad
dni en EMPLEADO Atributos identificadores alternativos (IA)
Claves Alternativas El resto de IC’s nss y (nombre, fechanacim) en EMPLEADO
Conceptos básicos del modelo
20
Notación para atributos clave
[EN2002] [MPM1999]
En el MER es obligatorio que todo tipo de entidad tenga un identificador
nombre
fechanacim
EMPLEADO
dirección
telefono
calle provinciaciudadcodpostal
dni edad
altura
(0,3)
D
nss nacionalidad
(1,2)n-f
(0,3)
(1,2)
(0,1)EMPLEADO
nombre
fechanacim telefono
calleprovinciaciudad
codpostal
edadnss
dni
altura
nacionalidad
n-f
dirección
IP
Conceptos básicos del modelo
21
CLAVE FORANEA
Es una limitación referencial entre dos tablas.
La clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija o referendo) que se refiere a una columna o grupo de columnas en otra tabla (tabla maestra o referenciada). Las columnas en la tabla referendo deben ser la clave primaria u otra clave candidata en la tabla referenciada.
Conceptos básicos del modelo
22
No suele representarse, aunque una forma de hacerlo sería: [MPM1999]
DOMINIO (values set) Conjunto de valores
Cada atributo simple está asociado a un dominio, que especifica sus valores válidos
Atributo Dominio Descripción Dominio
nombre NOMBRES cadenas de hasta 30 caracteres alfabéticos
telefono TELEFONOS cadenas de hasta 9 caracteres numéricos
altura MEDIDAS números reales entre 0 y 2’5 (metros)
... ... ...
TELEFONOS
NOMBRES
telefono
nombre
MEDIDASaltura
EMPLEADO
Conceptos básicos del modelo
23
RELACIÓN (relationship) También “interrelación” Asociación, vínculo o correspondencia
entre instancias de entidades relacionadas de alguna manera en el “mundo real” el director “Alejandro Amenábar” ha rodado la película
“Mar adentro” el empleado 87654321 trabaja en el local de
videoclub “principal” la película “El imperio contraataca” es una continuación
de la película “La guerra de las galaxias”
Conceptos básicos del modelo
24
DIRECTOR HA_RODADOPELICULA
J. Médem
C. Saura
F. Trueba
S. Segura
A. Amenábar
Vacas
Tesis
Belle Epoque
Torrente
Tierra Abre los ojos
Los otros
Tipo de Relación: conjunto de instancias
Tipo de Entidad: conjunto de instancias
Instancia del tipo de
relación
25
TIPO DE RELACIÓN (relationship set)
Estructura genérica o abstracción del conjunto de relaciones existentes entre dos o más tipos de entidadun DIRECTOR ha rodado PELICULA’s
Notación
DIRECTOR PELICULAHA_RODADO
Conceptos básicos del modelo
26
ACTOR PELICULAACTUA_EN
CLIENTE PELICULA
LOCAL_VIDEOCLUB
ALQUILA
Grado de un tipo de relación Número de tipos de entidad que participan
en el tipo de relación Binaria: grado 2 (el más frecuente) Ternaria: grado 3 Reflexiva (o recursiva): grado 1
PELICULACONTINUACIONDE
Conceptos básicos del modelo
27
Nombres de Rol (papel) Todo tipo de entidad que participa en un tipo
de relación juega un papel específico en la relación
Los nombres de rol se deben usar, sobre todo, en los tipos de relación reflexivos, para evitar ambigüedad
original
versiónPELICULAVERSION_DE
DIRECTOR PELICULAHA_RODADOrealizador film
Conceptos básicos del modelo
28
Restricciones estructurales sobre tipos de relación
Limitan las posibles combinaciones de entidades que pueden participar en las relaciones
Extraídas de la situación real que se modela“Una película debe haber sido dirigida por uno y sólo un director”“Un director ha dirigido al menos una película y puede haber
dirigido muchas” Clases de restricciones estructurales:
Razón de cardinalidad (o tipo de correspondencia)
Razón de participación
Conceptos básicos del modelo
29
Razón de Cardinalidad
Número máximo de instancias de tipo de relación en las que puede participar una misma instancia de tipo de entidad la cardinalidad de HA_RODADO es “1 a N” HA_RODADO es de tipo “1 a N”
Notación etiqueta en la línea que
une entidad y relación Ojo: da la sensación de
que se representa “al revés”
1
N
DIRECTOR
PELICULA
HA_RODADO
Conceptos básicos del modelo
30
Razones de cardinalidad más comunes: 1:1 (“uno a uno”) 1:N (“uno a muchos”) M:N (“muchos a muchos”)
ACTOR
PELICULA
personaje
film
M
ACTUA_EN
N
Conceptos básicos del modelo
Razón de Cardinalidad Notación EN2002
HIJOS
PAPÁ
M
TIENE
11
1
31
Razón de Participación Notación [EN2002]
Especifica si toda la extensión de un tipo de entidad participa en un tipo de relación, o sólo parte de la extensión
Indica si hay dependencia en existencia de un tipo de entidad respecto de un tipo de relación
Clases de participación: Participación total (dependencia en
existencia) Participación parcial
Conceptos básicos del modelo
32
Razón de Participación (ii) [EN2002]
Notación Líneas
dobles o simples
EMPLEADO
LOCAL_VIDEOCLUB
encargado
sucursal
1
trabajador
lugar trabajo
1
TRABAJA_EN SUPERVISA
N1
DIRECTOR
PELICULA
HA_ RODADO
1
N
PELICULA
personaje
film
M
ACTUA_EN
N
ACTOR
Conceptos básicos del modelo
33
Atributos de tipos de relación
[EN2002]
[MPM1999]
EMPLEADO
LOCAL_VIDEOCLUB
11
TRABAJA_EN SUPERVISA
N1
horas fechainicio
PELICULA(0,m)ACTUA_EN
(1,n)ACTOR
salariopapel
M:N
34
Atributos de tipos de relación (ii) Conceptualmente pertenecen a la relación
Un atributo de una M:N es propio de la relación Un atributo de una 1:1 o 1:N “se puede llevar” a
uno de los tipos de entidad participantes
horas fechainicio
[EN2002]
horas
horas
fechainicio
EMPLEADO11
TRABAJA_EN SUPERVISA
N1
LOCAL_VIDEOCLUB
Conceptos básicos del modelo
35
Tipo de Entidad Débil
No tiene atributos clave propios Una instancia se identifica por su relación
con una instancia de otro tipo de entidad Tipo de relación identificador
Relaciona un tipo de entidad débil y un tipo de entidad regular (fuerte, dominante, padre, propietaria)
Clave parcial (o discriminante) Atributos de la entidad débil, que identifican de
forma única cada instancia, siempre que esté relacionada con una instancia del tipo de entidad regular
Clave = (clave_entidad_regular, clave_parcial) Notación
COPIA
Conceptos básicos del modelo
36
Tipo de entidad débil (ii) [EN2002]PELICULA
numcopia
titulo
1
N
COPIA
TIENE
PACIENTE
VISITA_MEDICA diahora
1nss
N
MEDICO ncolegiado
nombre
N
1
especialidad
ACUDE
ASISTIDAPOR
Tipo de Relación
Identificador
Clave parcial o Discriminante
Tipo de EntidadRegular
Conceptos básicos del modelo
Dependenciaen existenciaDependenciaen existencia
37
EMPLEADO
numlicencia
dni
1
N
PERMISOCONDUCCION
POSEE
tipo
Tipo de entidad débil (iii) [EN2002] No toda participación total (o dependencia en
existencia) implica un tipo de entidad débil
PERMISO_CONDUCCIÓN no es débil: depende en existencia de EMPLEADO, pero tiene clave primaria propia
Conceptos básicos del modelo
38
INTEGRIDAD REFERENCIAL
Es un sistema de reglas que utilizan la mayoría de las bases de datos relacionales para asegurarse que los registros de tablas relacionadas son validos y que no se borren o cambien datos relacionados de forma accidental produciendo errores de integridad.
Conceptos básicos del modelo
39
INTEGRIDAD REFERENCIAL
Conceptos básicos del modelo
Cuando insertamos una nueva fila en la tabla secundaria y el valor de la clave foránea no existe en la tabla principal
Cuando modificamos el valor de la clave principal de un registro q tiene hijos
Como se producen los errores en los datos
40
INTEGRIDAD REFERENCIAL
Conceptos básicos del modelo
Cuando modificamos el valor de la clave foránea, el nuevo valor de be existir en la tabla principal
Cuando queremos borrar una fila de la tabla principal y ese registro tiene hijos
Como se producen los errores en los datos
41
INTEGRIDAD REFERENCIAL
Conceptos básicos del modelo
Actualizar registros en cascada
Eliminar registros en cascada
Soluciones que pueden darse: