Modelo Entidad-Relación Autor: Miguel Orquera Profesor de Bases de datos Universidad Técnica del Norte Ibarra - Ecuador Basado en el libro  Fundamentos de Bases de datos. 4ta ed. Korth, Silverschatz, Sudarshan
Contenidos Conjuntos de entidades Conjuntos de relaciones Cuestiones de diseño  Restricciones  Claves Diagramas E-R
Conjuntos de entidades Una base de datos puede ser modelada como: Una colección de entidades, Relaciones entre entidades. Una  entidad  es un objeto que existe y es distinguible de otros objetos. Ejemplo:  una persona específicas, compañia, evento, planta Las entidades tienen  atributos Ejemplo: las personas tienen  nombres  y  direcciones Un conjunto de  entidades  es un conjunto de entidades del mismo tipo que comparten las mismas propiedades. Ejemplo: conjunto de todas las personas, compañias árboles, días de vacación
Conjuntos de entidades  cliente  y  préstamo customer-id  customer-  customer-  customer-  loan-  amount   name  street  city  number
Atributos Una entidad está representada por un conjunto de atributos, estas son propiedades descriptivas poseidas por todos los miembros de un conjunto de entidades. Ejemplo:  customer = (customer-id, customer-name, customer-street, customer-city) loan = (loan-number, amount) Dominio  – el conjunto de valores permitidos por cada atributo  Tipos de atributos: Atributos Simples  y C ompuestos . Atributos univalorados y   multi-valorados Ej. Atributo multivalorado: números de teléfono Atributos Derivados Pueden ser calculados desde otros otributos Ej.  edad, dado la fecha de nacimiento
Atributos compuestos
Conjuntos de relaciones Una relación es una asociación entre varias entidades Ejemplo: Hayes depositante A-102 entidad  cliente relación entidad  cuenta Un conjunto de relaciones es una relación matemática entre  n     2 entidades, cada una tomada desde conjuntos de entidades {( e 1 ,  e 2 , …  e n ) |  e 1      E 1 ,  e 2      E 2 , …,  e n      E n } donde ( e 1 ,  e 2 , …,  e n ) es una relación Ejemplo:  (Hayes, A-102)     depositante
Conjunto de relaciones  prestatario
Conjuntos de Relaciones (Cont.) Un  atributo   puede también pertenecer a un conjunto de relaciones. Por ejemplo, la relación  depositante  entre los conjuntos de entidades  customer  y  account   podria tener el atributo  fecha-acceso
Grado de un Conjunto de Relaciones Se refiere al número de conjuntos de entidades que participan en la relación. Las relaciones que involucran dos conjuntos de entidades son  binarias  (o grado dos).  Generalmente, la mayoría de las relaciones en un sistema de base de datos son binarias. Las relaciones pueden involucrar mas de dos conjuntos de entidades.  Ej.  Suponga que los empleados de un banco pueden tener tareas (responsibidades) en varias sucursales, con diferentes tareas en diferentes sucursales.  Entonces hay una relación ternaria entre los conjuntos de entidades  empleado ,  tarea  y  sucursal Las relaciones entre mas de dos conjuntos de entidades son raras. La mayoría de las relaciones son binarias.
Correspondencia de Cardinalidades Expresa el número de entidades  a las cuales otra entidad puede ser asociada mediante una relación. Se usan mucho en la descripción de relaciones binarias. En una relación binaria la corresponencia de cardinalidades debe ser una de las siguientes: Uno a uno Uno a muchos Muchos a uno Muchos a muchos
Correspondencia de Cardinalidades Uno a uno Uno a muchos Nota: Algunos elementos en A y B podrían no ser mapeados con ningún  elemento en el otro conjunto
Correspondencia de Cardinalidades Muchos a uno Muchos a muchos Nota: Algunos elementos en A y B podrían no ser mapeados con ningún elemento en el otro conjunto
La Cardinalidad afecta al diseño E-R Se puede hacer al atributo  fecha de acceso  un atributo de  account , en vez de ser atributo de la relación, si cada  account  puede tener solamente un  customer   Es decir, la relación desde  account  a  customer  es muchos a uno, o equivalentemente,  customer  a  account  es uno a muchos
Diagramas E-R Rectángulos   representan conjuntos de entidades. Rombos   representan relaciones. Lineas   unen atributos a conjuntos de entidades y conjuntos de entidades a relaciones. Elipses   representan atributos Doble elipses   representan atributos multivaluados. Elipses segmentadas  denotan atributos derivados. Subrayado   indica un atributo que es clave primaria
Diagrama E-R con atributos Compuestos, Multivaluados, y Derivados
Relaciones con Atributos
Roles Los conjuntos de entidades de una relación  no necesitan ser distintas. Las etiquetas  “manager” y “worker” son llamadas roles; ellos espacifican como las entidades  employee  interactúan en la relación  works-for . Los roles están indicados en los diagramas E-R etiquetando las lineas que conectan los rombos a los rectángulos. Las etiquetas de roles son opcionales, y son usados par clarificar la semántica de las  relaciones
Restricciones de Cardinalidad Se Expresa las restricciones de cardinalidad dibujando o una linea dirigida (  ), que significa “uno,” o una linea no dirigida (—), que significa “muchos” , entre la relacion y la entidad. Ej: Relación Uno a uno: Un  customer  es asociado con al menos un  préstamo  en la relación  borrower Un  loan  es asociado con al menos un  customer  en  borrower
Relación uno a muchos En una relación uno a muchos un  loan  es asociado con al menos un  customer  a través de  borrower , un  customer  es asociado con varios (incluído 0)  loans  en  borrower
Relaciones Muchos a Uno En una relación muchos a uno un  loan  es  asociado con varios (incluído 0)  customers  en  borrower , un  customer  es asociado con al menos un  loan  en  borrower
Relación Muchos a Muchos Un  customer  es asociado con varios (posiblemente 0)  loans  en  borrower Un  loan  es asociado con varios (posiblemente 0)  customers  en  borrower
Participación de un conjunto de entidades dentro de una relación Participación total  (indicada por doble linea): cada entidad de un conjunto se reñlaciona con al menos un elemento del otro conjunto de entidades.  Ej. La participación de  loan  en  borrower  es total cada loan debe tener un customer asociado a él en borrower Participación parcial : algunas entidades no participan dentro de la relación Ej. la participación de  customer  en  borrower  es parcial
Notación Alternativa para la Cardinalidad En la Cardinalidad se puede también  expresar las restricciones de participación
Claves Una  super clave  de un conjunto de entidades está compuenta por uno o mas atributos cuyos valores identifican a cada entidad. Una  clave candidata  de un conjunto de entidades es una mínima super clave Customer-id  es clave candidata de  customer account-number  es clave candidata de  account Aunque pueden existir varias claves candidatas, solo una de ellas es seleccionada como  clave primary .
Claves de Conjuntos de Relaciones La combinación de claves primarias de los conjuntos de entidades participantes forman una superclave de un conjunto de relaciones. ( customer-id, account-number ) es la super clave de  depositor NOTA:  esto significa que un par de conjuntos de entidades puede tener al menos una relación en un conjunto de relaciones.  Ej. Si queremos encontrar todas las fechas de acceso a cada cuenta por cada cliente, no podemos asumir una relación para cada acceso.  Aquí se puede usar un atributo multivaluado Debemos considerar la correspondencia de cardinalidad del conjunto de relaciones cuando decidimos cuales son las claves candidatas. Necesitamos considerar la semántica del conjunto de relaciones en la seleccion de la clave primaria en caso de mas de una clave candidata

Modelo entidad relación parte 1

  • 1.
    Modelo Entidad-Relación Autor:Miguel Orquera Profesor de Bases de datos Universidad Técnica del Norte Ibarra - Ecuador Basado en el libro Fundamentos de Bases de datos. 4ta ed. Korth, Silverschatz, Sudarshan
  • 2.
    Contenidos Conjuntos deentidades Conjuntos de relaciones Cuestiones de diseño Restricciones Claves Diagramas E-R
  • 3.
    Conjuntos de entidadesUna base de datos puede ser modelada como: Una colección de entidades, Relaciones entre entidades. Una entidad es un objeto que existe y es distinguible de otros objetos. Ejemplo: una persona específicas, compañia, evento, planta Las entidades tienen atributos Ejemplo: las personas tienen nombres y direcciones Un conjunto de entidades es un conjunto de entidades del mismo tipo que comparten las mismas propiedades. Ejemplo: conjunto de todas las personas, compañias árboles, días de vacación
  • 4.
    Conjuntos de entidades cliente y préstamo customer-id customer- customer- customer- loan- amount name street city number
  • 5.
    Atributos Una entidadestá representada por un conjunto de atributos, estas son propiedades descriptivas poseidas por todos los miembros de un conjunto de entidades. Ejemplo: customer = (customer-id, customer-name, customer-street, customer-city) loan = (loan-number, amount) Dominio – el conjunto de valores permitidos por cada atributo Tipos de atributos: Atributos Simples y C ompuestos . Atributos univalorados y multi-valorados Ej. Atributo multivalorado: números de teléfono Atributos Derivados Pueden ser calculados desde otros otributos Ej. edad, dado la fecha de nacimiento
  • 6.
  • 7.
    Conjuntos de relacionesUna relación es una asociación entre varias entidades Ejemplo: Hayes depositante A-102 entidad cliente relación entidad cuenta Un conjunto de relaciones es una relación matemática entre n  2 entidades, cada una tomada desde conjuntos de entidades {( e 1 , e 2 , … e n ) | e 1  E 1 , e 2  E 2 , …, e n  E n } donde ( e 1 , e 2 , …, e n ) es una relación Ejemplo: (Hayes, A-102)  depositante
  • 8.
  • 9.
    Conjuntos de Relaciones(Cont.) Un atributo puede también pertenecer a un conjunto de relaciones. Por ejemplo, la relación depositante entre los conjuntos de entidades customer y account podria tener el atributo fecha-acceso
  • 10.
    Grado de unConjunto de Relaciones Se refiere al número de conjuntos de entidades que participan en la relación. Las relaciones que involucran dos conjuntos de entidades son binarias (o grado dos). Generalmente, la mayoría de las relaciones en un sistema de base de datos son binarias. Las relaciones pueden involucrar mas de dos conjuntos de entidades. Ej. Suponga que los empleados de un banco pueden tener tareas (responsibidades) en varias sucursales, con diferentes tareas en diferentes sucursales. Entonces hay una relación ternaria entre los conjuntos de entidades empleado , tarea y sucursal Las relaciones entre mas de dos conjuntos de entidades son raras. La mayoría de las relaciones son binarias.
  • 11.
    Correspondencia de CardinalidadesExpresa el número de entidades a las cuales otra entidad puede ser asociada mediante una relación. Se usan mucho en la descripción de relaciones binarias. En una relación binaria la corresponencia de cardinalidades debe ser una de las siguientes: Uno a uno Uno a muchos Muchos a uno Muchos a muchos
  • 12.
    Correspondencia de CardinalidadesUno a uno Uno a muchos Nota: Algunos elementos en A y B podrían no ser mapeados con ningún elemento en el otro conjunto
  • 13.
    Correspondencia de CardinalidadesMuchos a uno Muchos a muchos Nota: Algunos elementos en A y B podrían no ser mapeados con ningún elemento en el otro conjunto
  • 14.
    La Cardinalidad afectaal diseño E-R Se puede hacer al atributo fecha de acceso un atributo de account , en vez de ser atributo de la relación, si cada account puede tener solamente un customer Es decir, la relación desde account a customer es muchos a uno, o equivalentemente, customer a account es uno a muchos
  • 15.
    Diagramas E-R Rectángulos representan conjuntos de entidades. Rombos representan relaciones. Lineas unen atributos a conjuntos de entidades y conjuntos de entidades a relaciones. Elipses representan atributos Doble elipses representan atributos multivaluados. Elipses segmentadas denotan atributos derivados. Subrayado indica un atributo que es clave primaria
  • 16.
    Diagrama E-R conatributos Compuestos, Multivaluados, y Derivados
  • 17.
  • 18.
    Roles Los conjuntosde entidades de una relación no necesitan ser distintas. Las etiquetas “manager” y “worker” son llamadas roles; ellos espacifican como las entidades employee interactúan en la relación works-for . Los roles están indicados en los diagramas E-R etiquetando las lineas que conectan los rombos a los rectángulos. Las etiquetas de roles son opcionales, y son usados par clarificar la semántica de las relaciones
  • 19.
    Restricciones de CardinalidadSe Expresa las restricciones de cardinalidad dibujando o una linea dirigida (  ), que significa “uno,” o una linea no dirigida (—), que significa “muchos” , entre la relacion y la entidad. Ej: Relación Uno a uno: Un customer es asociado con al menos un préstamo en la relación borrower Un loan es asociado con al menos un customer en borrower
  • 20.
    Relación uno amuchos En una relación uno a muchos un loan es asociado con al menos un customer a través de borrower , un customer es asociado con varios (incluído 0) loans en borrower
  • 21.
    Relaciones Muchos aUno En una relación muchos a uno un loan es asociado con varios (incluído 0) customers en borrower , un customer es asociado con al menos un loan en borrower
  • 22.
    Relación Muchos aMuchos Un customer es asociado con varios (posiblemente 0) loans en borrower Un loan es asociado con varios (posiblemente 0) customers en borrower
  • 23.
    Participación de unconjunto de entidades dentro de una relación Participación total (indicada por doble linea): cada entidad de un conjunto se reñlaciona con al menos un elemento del otro conjunto de entidades. Ej. La participación de loan en borrower es total cada loan debe tener un customer asociado a él en borrower Participación parcial : algunas entidades no participan dentro de la relación Ej. la participación de customer en borrower es parcial
  • 24.
    Notación Alternativa parala Cardinalidad En la Cardinalidad se puede también expresar las restricciones de participación
  • 25.
    Claves Una super clave de un conjunto de entidades está compuenta por uno o mas atributos cuyos valores identifican a cada entidad. Una clave candidata de un conjunto de entidades es una mínima super clave Customer-id es clave candidata de customer account-number es clave candidata de account Aunque pueden existir varias claves candidatas, solo una de ellas es seleccionada como clave primary .
  • 26.
    Claves de Conjuntosde Relaciones La combinación de claves primarias de los conjuntos de entidades participantes forman una superclave de un conjunto de relaciones. ( customer-id, account-number ) es la super clave de depositor NOTA: esto significa que un par de conjuntos de entidades puede tener al menos una relación en un conjunto de relaciones. Ej. Si queremos encontrar todas las fechas de acceso a cada cuenta por cada cliente, no podemos asumir una relación para cada acceso. Aquí se puede usar un atributo multivaluado Debemos considerar la correspondencia de cardinalidad del conjunto de relaciones cuando decidimos cuales son las claves candidatas. Necesitamos considerar la semántica del conjunto de relaciones en la seleccion de la clave primaria en caso de mas de una clave candidata