diseño bdr
-
Upload
ivancho-gonzalez -
Category
Documents
-
view
235 -
download
0
description
Transcript of diseño bdr
DISENtildeO DE BASES DE DATOS RELACIONALES
Disentildeo de Bases de datos
ObjetivoEn general el objetivo del disentildeo de
una base de datos relacional es generar un conjunto de esquemas de relaciones que permitan almacenar la informacioacuten con un miacutenimo de redundancia pero que a la vez faciliten la recuperacioacuten de la informacioacuten
Disentildeo de Bases de datos
Problemas en el disentildeo de bases de datos Redundancia de informacioacutenIncoherencia de datosValores nulos Complicada actualizacioacuten
(insercioacuten eliminacioacuten y modificacioacuten)
Desperdicio de espacio
Disentildeo de Bases de datos
Fases del disentildeo de bases de datos
Mundo Real
RECOLECCIOacuteN Y ANALISIS DE REQUERIMIENTOS
DISENtildeO CONCEPTUAL
DISENtildeO LOacuteGICO
DISENtildeO FISICO
Disentildeo de Bases de datos
Recoleccioacuten y anaacutelisis de requerimientos
Los disentildeadores entrevistan a los futuros usuarios de la base de datos para recoger y documentar sus necesidades de informacioacuten En paralelo conviene definir los requerimientos funcionales que consisten en operaciones (transacciones) que se aplicaraacuten a la base de datos e incluyen la obtencioacuten de datos y la actualizacioacuten
Disentildeo de Bases de datos
Disentildeo conceptualCrear un esquema conceptual mediante un
modelo de datos conceptual de alto nivelEl esquema conceptual contiene una
descripcioacuten detallada de los requerimientos de informacioacuten de los usuarios y contiene descripciones de los tipos de datos relaciones entre ellos y restricciones
Se utiliza para el disentildeo de esquemas conceptuales el MER (modelo entidad-relacioacuten
Disentildeo de Bases de datos
Disentildeo loacutegico de la base de datos
Transformar el modelo conceptual al modelo de datos empleados por el SGBD (relacional)
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
ObjetivoEn general el objetivo del disentildeo de
una base de datos relacional es generar un conjunto de esquemas de relaciones que permitan almacenar la informacioacuten con un miacutenimo de redundancia pero que a la vez faciliten la recuperacioacuten de la informacioacuten
Disentildeo de Bases de datos
Problemas en el disentildeo de bases de datos Redundancia de informacioacutenIncoherencia de datosValores nulos Complicada actualizacioacuten
(insercioacuten eliminacioacuten y modificacioacuten)
Desperdicio de espacio
Disentildeo de Bases de datos
Fases del disentildeo de bases de datos
Mundo Real
RECOLECCIOacuteN Y ANALISIS DE REQUERIMIENTOS
DISENtildeO CONCEPTUAL
DISENtildeO LOacuteGICO
DISENtildeO FISICO
Disentildeo de Bases de datos
Recoleccioacuten y anaacutelisis de requerimientos
Los disentildeadores entrevistan a los futuros usuarios de la base de datos para recoger y documentar sus necesidades de informacioacuten En paralelo conviene definir los requerimientos funcionales que consisten en operaciones (transacciones) que se aplicaraacuten a la base de datos e incluyen la obtencioacuten de datos y la actualizacioacuten
Disentildeo de Bases de datos
Disentildeo conceptualCrear un esquema conceptual mediante un
modelo de datos conceptual de alto nivelEl esquema conceptual contiene una
descripcioacuten detallada de los requerimientos de informacioacuten de los usuarios y contiene descripciones de los tipos de datos relaciones entre ellos y restricciones
Se utiliza para el disentildeo de esquemas conceptuales el MER (modelo entidad-relacioacuten
Disentildeo de Bases de datos
Disentildeo loacutegico de la base de datos
Transformar el modelo conceptual al modelo de datos empleados por el SGBD (relacional)
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Problemas en el disentildeo de bases de datos Redundancia de informacioacutenIncoherencia de datosValores nulos Complicada actualizacioacuten
(insercioacuten eliminacioacuten y modificacioacuten)
Desperdicio de espacio
Disentildeo de Bases de datos
Fases del disentildeo de bases de datos
Mundo Real
RECOLECCIOacuteN Y ANALISIS DE REQUERIMIENTOS
DISENtildeO CONCEPTUAL
DISENtildeO LOacuteGICO
DISENtildeO FISICO
Disentildeo de Bases de datos
Recoleccioacuten y anaacutelisis de requerimientos
Los disentildeadores entrevistan a los futuros usuarios de la base de datos para recoger y documentar sus necesidades de informacioacuten En paralelo conviene definir los requerimientos funcionales que consisten en operaciones (transacciones) que se aplicaraacuten a la base de datos e incluyen la obtencioacuten de datos y la actualizacioacuten
Disentildeo de Bases de datos
Disentildeo conceptualCrear un esquema conceptual mediante un
modelo de datos conceptual de alto nivelEl esquema conceptual contiene una
descripcioacuten detallada de los requerimientos de informacioacuten de los usuarios y contiene descripciones de los tipos de datos relaciones entre ellos y restricciones
Se utiliza para el disentildeo de esquemas conceptuales el MER (modelo entidad-relacioacuten
Disentildeo de Bases de datos
Disentildeo loacutegico de la base de datos
Transformar el modelo conceptual al modelo de datos empleados por el SGBD (relacional)
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Fases del disentildeo de bases de datos
Mundo Real
RECOLECCIOacuteN Y ANALISIS DE REQUERIMIENTOS
DISENtildeO CONCEPTUAL
DISENtildeO LOacuteGICO
DISENtildeO FISICO
Disentildeo de Bases de datos
Recoleccioacuten y anaacutelisis de requerimientos
Los disentildeadores entrevistan a los futuros usuarios de la base de datos para recoger y documentar sus necesidades de informacioacuten En paralelo conviene definir los requerimientos funcionales que consisten en operaciones (transacciones) que se aplicaraacuten a la base de datos e incluyen la obtencioacuten de datos y la actualizacioacuten
Disentildeo de Bases de datos
Disentildeo conceptualCrear un esquema conceptual mediante un
modelo de datos conceptual de alto nivelEl esquema conceptual contiene una
descripcioacuten detallada de los requerimientos de informacioacuten de los usuarios y contiene descripciones de los tipos de datos relaciones entre ellos y restricciones
Se utiliza para el disentildeo de esquemas conceptuales el MER (modelo entidad-relacioacuten
Disentildeo de Bases de datos
Disentildeo loacutegico de la base de datos
Transformar el modelo conceptual al modelo de datos empleados por el SGBD (relacional)
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Recoleccioacuten y anaacutelisis de requerimientos
Los disentildeadores entrevistan a los futuros usuarios de la base de datos para recoger y documentar sus necesidades de informacioacuten En paralelo conviene definir los requerimientos funcionales que consisten en operaciones (transacciones) que se aplicaraacuten a la base de datos e incluyen la obtencioacuten de datos y la actualizacioacuten
Disentildeo de Bases de datos
Disentildeo conceptualCrear un esquema conceptual mediante un
modelo de datos conceptual de alto nivelEl esquema conceptual contiene una
descripcioacuten detallada de los requerimientos de informacioacuten de los usuarios y contiene descripciones de los tipos de datos relaciones entre ellos y restricciones
Se utiliza para el disentildeo de esquemas conceptuales el MER (modelo entidad-relacioacuten
Disentildeo de Bases de datos
Disentildeo loacutegico de la base de datos
Transformar el modelo conceptual al modelo de datos empleados por el SGBD (relacional)
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Disentildeo conceptualCrear un esquema conceptual mediante un
modelo de datos conceptual de alto nivelEl esquema conceptual contiene una
descripcioacuten detallada de los requerimientos de informacioacuten de los usuarios y contiene descripciones de los tipos de datos relaciones entre ellos y restricciones
Se utiliza para el disentildeo de esquemas conceptuales el MER (modelo entidad-relacioacuten
Disentildeo de Bases de datos
Disentildeo loacutegico de la base de datos
Transformar el modelo conceptual al modelo de datos empleados por el SGBD (relacional)
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Disentildeo loacutegico de la base de datos
Transformar el modelo conceptual al modelo de datos empleados por el SGBD (relacional)
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Disentildeo fiacutesico de la base de datos
En este paso se especifican las estructuras de almacenamiento internas y la organizacioacuten de los archivos de la base de datos
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Generalidades El modelo E-R fue propuesto por Peter P Chen
entre los antildeos 1976-1977 Posteriormente otros muchos autores han investigado y escrito sobre el modelo proporcionando importantes aportaciones por lo que realmente no se puede considerar que exista un uacutenico modelo E-R
El modelo E-R describe los datos como entidades relaciones (viacutenculos) y atributos y permite representar el esquema conceptual de una base de datos de forma graacutefica mediante los diagramas E-R
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Esquema conceptual
Descripcioacuten concisa de los requisitos de informacioacuten de los usuariosDescripciones detalladas de TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir
Sin detalles de implementacioacuten Maacutes faacutecil de entender Comunicacioacuten con el usuario no teacutecnico
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Entidades y atributosUna entidad puede ser un objeto con existencia
fiacutesica o un objeto con existencia conceptualSe representa por un rectaacutengulo dentro de la
cual va el nombre en singularldquoPersona lugar cosa concepto o suceso real o abstracto de intereacutes para la
empresardquo (ANSI 1977)
CLIENTE PROVEEDOR CURSO
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Tipos de entidadesFuertes (o regulares) que son aquellas
que tienen existencia por si mismas
Deacutebiles cuya existencia depende de otro tipo de entidad Estas entidades normalmente no tienen suficientes atributos para formar una clave primaria
EMPLEADO
FAMILIAR
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
AtributosCada entidad tiene propiedades
especificas que la describen Los atributos se representan por elipses
que estaacuten conectadas a su entidad o relacioacuten mediante una liacutenea recta
PROVEEDOR
Cod Nombre Telef
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
AtributosUna entidad particular es descrita
por los valores de sus atributos
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Atributos Al conjunto de valores que puede tomar un atributo se le
llama dominio del atributo Cada atributo simple estaacute asociado a un dominio que
especifica sus valores vaacutelidos
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Atributos Toda entidad debe tener al menos un atributo que permita
diferenciar unas entidades particulares de otras A estos atributos se les llaman claves
[EN 2002] Elmasri R Navathe SB Fundamentos de Sistemas de Bases de Datos 3ordf ed Addison-Wesley (Cap 3 y 4)[MPM 1999] De Miguel A Piattini M Marcos E Disentildeo de bases de datos relacionales Ra-Ma (Cap 2)
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Atributos Clave Una clave puede estar formada por
varios atributos --gt clave compuesta Combinacioacuten de valores distinta para cada instancia
(nombre fechanacim) en el tipo de entidad EMPLEADO Una clave compuesta debe ser miacutenima
Un tipo de entidad puede tenermaacutes de una clave --gt claves candidatas Claves o Identificadores Candidatos de EMPLEADO
nit Nuacutemero de identificacioacuten tributaria CC Nuacutemero de Ceacutedula de ciudadania (nombre fechanacim)
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Tipos de atributos a) Simples o compuestos Los compuestos
estaacuten formados por un conjunto de atributos mientras que los simples no se pueden dividir
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Tipos de Atributo b) Monovaluados o multivaluados Los monovaluados soacutelo pueden tener un
valor para una entidad particular mientras que los multivaluados pueden tener maacutes de un valor
Pueden tener liacutemites superior e inferior del nuacutemero de valores por entidad nacionalidad (1-2) telefono (0-3)
AUTO
Placa Modelo Color
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Tipos de atributos Almacenados o derivados Los derivados son atributos
cuyo valor para una entidad particular puede obtenerse en funcioacuten de los valores almacenados en otros atributos Se representan mediante una elipse con trazo discontinuo
PERSONA
DNI Nombre FechaN Edad
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Vinculo o relacioacuten Tambieacuten ldquointerrelacioacutenrdquo Asociacioacuten viacutenculo o correspondencia entre
instancias de entidades relacionadas de alguna manera en el ldquomundo realrdquo
El director ldquoAlejandro Amenaacutebarrdquo ha rodado la peliacutecula ldquoMar adentrordquo
El empleado 87654321 trabaja en el local de videoclub ldquoprincipalrdquo
La peliacutecula ldquoEl imperio contraatacardquo es una continuacioacuten de la peliacutecula ldquoLa guerra de las galaxiasrdquo
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Se puede definir como una correspondencia
asociacioacuten o conexioacuten entre dos o maacutes entidades En los diagramas E-R se representa graacuteficamente
como un rombo y sus nombres son verbos
Una relacioacuten puede tener atributos descriptivos
PROVEEDOR ARTICULOVende
fecha
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Viacutenculo o relacioacuten Grado de una relacioacuten es el nuacutemero de entidades
que participan en la relacioacuten Binaria grado 2 (el maacutes frecuente) Ternaria grado 3 Reflexiva (o recursiva) grado 1
Se puede restringir el MER para incluir solo conjuntos de relaciones binarias es decir de grado 2 (es aconsejable)
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Vinculo o Relacioacuten Correspondencia de cardinalidad expresa el
nuacutemero maacuteximo de entidades que estaacuten relacionadas con una uacutenica entidad del otro conjunto de entidades que interviene en la relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [EN-2000]
Etiqueta en la liacutenea que une entidad y relacioacuten
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [MPM-1999]
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Viacutenculo o relacioacutenNotacioacuten [SKS-1998]
[SKS 1998] Silberschatz AKorth H Sudarshan S Fundamentosde Bases de Datos 3ordf edicioacuten Madrid McGraw-Hill (Cap 2)
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten Opcional (parcial) No todas las ocurrencias de una entidad
tienen que estar relacionadas con alguna de la otra entidad
PERSONA ANIMALPosee
Obligatoria (total) Todas las ocurrencias de una entidad deben estar relacionadas con alguna de la entidad con la que esta relacionada Se dice tambieacuten que existen una participacioacuten total de ese conjunto de entidades en el conjunto de relaciones
PROVEEDOR ARTICULOVende
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Tipos de participacioacuten de las entidades en una relacioacuten
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Cardinalidad de tipo de entidad [EN2002]
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Notaciones
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Relacioacuten DeacutebilbullTipo de relacioacuten deacutebil (o dependencia) Relaciona un tipo de entidad deacutebil y otro regularbull Clases de dependencia
bullEn existencia Si desaparece una instancia del tipo de entidad regular deben desaparecer las instancias de la entidad deacutebil que dependen de ellaEtiqueta ldquoErdquo en el tipo de relacioacuten deacutebilbullEn identificacioacuten Ademaacutes de la dependencia en existenciaUna instancia del tipo de entidad deacutebil no se puede identificar por siacute mismaSu clave es (clave_entidad_regular clave_parcial)Etiqueta ldquoIDrdquo en el tipo de relacioacuten deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Relacioacuten Deacutebil
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Modelo Entidad-Relacioacuten Extendido MERE
Enhanced Entity-Relationship model EERAportaciones de diversos autores al
modelo Entidad-Relacioacuten laquobaacutesicoraquoPermiten representar
Relaciones exclusivas entre siacute Jerarquiacuteas de EspecializacioacutenGeneralizacioacuten Agregacioacuten de entidades
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Relaciones ExclusivasDos (o maacutes) tipos de relacioacuten son exclusivos
respecto de un tipo de entidad que participa en ambos si cada instancia del tipo de entidad soacutelo puede participar en uno de los tipos de relacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Generalizacioacuten y Especializacioacuten
Caso especial de relacioacuten entre un tipo de entidad y varios otros tipos de entidad
La jerarquiacutea o relacioacuten que se establece entre uno y otros corresponde a la nocioacuten de ldquoes_unrdquo o de ldquoes_un_tipo_derdquo
Estas jerarquiacuteas pueden formarse por especializacioacuten o bien por generalizacioacuten
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Generalizacioacuten y EspecializacioacutenAgrupacioacuten de instancias dentro de un tipo de entidad que
debe representarse expliacutecitamente debido a su importancia para el disentildeo o aplicacioacuten
Subtipos del tipo de entidad VEHIacuteCULO CAMIOacuteN TURISMO AUTOBUacuteS CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO SECRETARIO GERENTE COMERCIAL
El tipo de entidad que se especializa en otros se llamaSupertipo ( VEHICULO EMPLEADO )
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
EG Supertipos y subtiposUn supertipo es todo tipo entidad sobre el
que se definen subclases Como se trata de entidades
Un subtipo es un subconjunto del tipo entidad que tiene sentido en el minimundo ya que tiene atributos particulares
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
El tipo relacioacuten entre una supertipo y sus subtipos se dice que es un tipo ES_UN (IS_A) Este tipo relacioacuten se representa a diferencia del resto de relaciones con un triaacutengulo El tipo ES_UN puede ser disjunto (disjunct) o solapado (overlap)
supertipo
Relacion IS_A
subtipo
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
cuando usar Especializacioacuten es el proceso de definir un conjunto de
subclases a partir de un tipo entidad Generalizacioacuten es el proceso de suprimir las diferencias
entre varios tipo entidad identificando sus cualidades comunes
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
EG Supertipos y subtipos
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
EG Herencia de tipobullUn subtipo puede tener atributos propios (especiacuteficos) y participar en relaciones por separadoUn subtipo hereda todos los atributos del supertipo y toda relacioacuten en la que participa el supertipo
ndash Un subtipo con sus atributos y relaciones especiacuteficos maacutes los atributos y relaciones que hereda del supertipo es untipo de entidad por derecho propio
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
cuando usar
Cuando los subtipos tienen atributos particulares que no tiene el supertipo Cuando existen tipos relacioacuten en los que participan solo algunos subtipos Cuando hay Atributos que soacutelo tienen sentido para algunas instancias de un
tipo y no para todas (atributos especiacuteficos)Ejemplo especialidadMeacutedica laquono es aplicableraquo a CELADOR
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Especializacioacuten
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
GeneralizacioacutenProceso inverso de la especializacioacutenbull Suprimir diferencias entre varios tipos de entidadidentificar atributos y relaciones comunes y formarun supertipo que los incluya
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Generalizacioacuten vs Especializacioacuten
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Restricciones de EG Definicioacuten
iquestQueacute instancias del supertipo pertenecen a cada subtipo
DisyuncioacutenSolapamiento iquestA cuaacutentos subtipos puede pertenecer (a la vez) una instancia
del supertipo
CompletitudParcialidad iquestDebe toda instancia del supertipo pertenecer a alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por predicado o condicioacuten
Condicioacuten de pertenencia a cada subtipo con base en el valor de alguacuten atributo del supertipo
Restriccioacuten que especifica que Las instancias del subtipo deben satisfacer la condicioacuten Todas las instancias del supertipo que cumplen la condicioacuten deben
pertenecer al subtipo
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por atributo
Todas las subclases definen la condicioacuten de pertenencia en teacuterminos del mismo atributo
es el discriminante de la especializacioacuten
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Restricciones Definicioacuten Subtipos definidos por el usuario
No existe (o no interesa definir) ninguna condicioacuten de pertenencia a los subtipos
El usuario al insertar una instancia elige a queacute subtipo pertenece
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Restricciones Disyuncioacutensolapamiento Subtipos disjuntos si una instancia del supertipo
puede ser miembro de como maacuteximo uno de los subtipos
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten total (completa) indica que toda
instancia del supertipo tambieacuten debe ser instancia de alguacuten subtipo
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Restricciones Completitudparcialidad Especializacioacuten parcial indica que es posible que alguna
instancia del supertipo no pertenezca a ninguno de los subtipos La unioacuten de las extensiones de los subtipos no es la extensioacuten
del supertipo en su totalidad
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
EGReglas de Insercioacuten Deben aplicarse a la Especializacioacuten y la
Generalizacioacuten debido a las restricciones definidas Insertar una instancia en un supertipo implica insertarla en
todos los subtipos definidos por predicado o por atributo para los cuales satisface el predicado de definicioacuten
Insertar una instancia en un supertipo de una especializacioacuten total implica insertarla en al menos un subtipo
Y si la especializacioacuten es disjunta entonces la instancia se insertaraacute en un uacutenico subtipo
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
EGReglas de Insercioacuten Eliminar una instancia de un supertipo implica eliminarla de todos
los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo
si la especializacioacuten es Disyunta y total o bien Solapada y total y la instancia ya soacutelo pertenece al subtipo (se eliminoacute del
resto)
En el resto de casos la instancia soacutelo se elimina del subtipo No del supertipo (1048652 lo hariacutea el usuario si fuese necesario)
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Agregado Restriccioacuten inherente del MER
No puede expresar relaciones entre varias relaciones ni entre un tipo de relacioacuten y un tipo de entidad
La agregacioacuten Permite combinar varios tipos de entidad relacionados mediante un tipo de relacioacuten para formar un
tipo de entidad agregada de nivel superior Uacutetil cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
AgregadoEs un elemento que nos permite relacionar una relacioacuten con otra
entidad Hasta el momento solo se podiacutean relacionar entidades Este nuevo elemento permite relacionar relaciones con entidades o relaciones entre si siempre que el caso lo requiera
PERSONA PROYECTOParticipa
Supervisa
ORGANISMO
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Agregado
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Agregado ejemplo Esquema en el MERE que almacena informacioacuten sobre las
entrevistas que una Bolsa de Empleo organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a un empleo y otras noiquestCoacutemo modelamos esto
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Agregado ejemplo Solucion1 Relacioacuten Ternaria
ERROR
Toda entrevista da lugar a conseguir un empleo
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Agregado ejemplo Solucion 2
ERROR
No es posible establecer una relacioacuten entre varias relaciones ni entre relaciones y entidades
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Agregado ejemplo
OK
OFERTA_EMPLEO tiene dependencia en existencia respecto de RESULTA_EN
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-
Disentildeo de Bases de datos
Agregado ejemplo
OK
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Slide 36
- Slide 37
- Slide 38
- Slide 39
- Slide 40
- Slide 41
- Slide 42
- Slide 43
- Slide 44
- Slide 45
- Slide 46
- Slide 47
- Slide 48
- Slide 49
- Slide 50
- Slide 51
- Slide 52
- Slide 53
- Slide 54
- Slide 55
- Slide 56
- Slide 57
- Slide 58
- Slide 59
- Slide 60
- Slide 61
- Slide 62
- Slide 63
- Slide 64
- Slide 65
- Slide 66
- Slide 67
- Slide 68
-