Abordagem ER
Capítulo 2
Abordagem Entidade-Relacionamento
Técnica para construir modelos conceituais de bases de dados
Técnica de modelagem de dados mais difundida e utilizada
Criada em 1976, por Peter Chen
Abordagem Entidade-Relacionamento
Padrão de fato para modelagem conceitual
Não é única:
Técnicas de modelagem orientada a objeto (UML) baseiam-se nos conceitos da abordagem ER
Abordagem Entidade-Relacionamento
Modelo de dados é representado através de um
Modelo ER é representado graficamente
Conceitos centrais da abordagem ER
Entidade
Relacionamento Atributo
Generalização/especialização Entidade associativa
Entidade
Conjunto de objetos da realidade modelada sobre os quais deseja-se
manter informações no banco de dados
Entidade – exemplos
Sistema de informações industrial
Entidade – exemplos
Sistema de contas correntes
Entidade pode representar
Entidade no DER
Representada através de um retângulo Retângulo contém o nome da entidade.
Entidade e instância
Para referir um objeto particular
Entidade e instância - terminologia
conjunto elemento do conjunto
entidade instância
classe instância
conjunto
de entidades entidade
Propriedades de entidades
Entidade isoladamente não informa nada
É necessário atribuir propriedades às entidades
Propriedades especificadas na forma de
Exercício Identificar entidades
Sistema de vendas
Deseja-se construir um banco de dados para um sistema de vendas. Em cada venda são vendidos vários produtos e um determinado produto pode
aparecer em diferentes vendas. Cada venda é efetuada por um vendedor para um determinado cliente. Um
produto está armazenado um uma prateleira.
Exercício 3.5 Identificar entidades
! ! " ! # $
% & " ! !
" ! ' ( )
* ' + !
$
* , ! # + + ! !
+ $ % + + + ! & ! $
, ! + ! " + - . ! + $
% + + ! " & ! $
Exercício 3.5 Entidades identificadas
ADMINISTRADORA CONDOMÍNIO
UNIDADE PESSOA
Relacionamento - conceito
Conjunto de associações entre entidades sobre as quais deseja-
se manter informações na base de dados
Relacionamento no DER
Relacionamento e instância
Relacionamento é um conjunto de associações entre instâncias de entidades
Uma instância (ocorrência) é uma associação específica entre determinadas instâncias de entidade
Exemplo (relacionamento LOTAÇÃO)
Diagrama de ocorrências
& ' & (
& ) & *
& +
& ,
& -
& .
& '/ 0 ' & .
/ 0 ' & ,
/ 0 . & *
/ 0 - 1 2 34 5 6 5 1
7 8 9 : 7 ; < = >
? 1 @ 6 A4 B 2 6 C 1 2 3 B
D > E < F G >
Auto-relacionamento
PESSOA
CASAMENTO
marido esposa
Papel de relacionamento
Função que uma ocorrência de uma entidade
cumpre em uma ocorrência de um relacionamento Relacionamento de casamento
Relacionamentos entre entidades diferentes:
Auto-relacionamento diagrama de ocorrências
C 6 ?4 5 B 1 B 6 C 6 ?4 5 B 1 B 6
Exercício Identificar relacionamentos
Deseja-se construir um banco de dados para um sistema de vendas. Em cada venda são vendidos vários produtos e um determinado produto pode
aparecer em diferentes vendas. Cada venda é efetuada por um vendedor para um determinado cliente. Um
produto está armazenado um uma prateleira.
Cardinalidade de relacionamentos
Propriedade importante de um relacionamento
Chamada de cardinalidade de uma entidade em um relacionamento
duas cardinalidades
Cardinalidade máxima no DER
D > E < F G >
= 7 9 < : E < 8 7 H E > 7 8 9 : 7 ; < = >
Cardinalidade máxima - DER
D > E < F G >
= 7 9 < : E < 8 7 H E > 7 8 9 : 7 ; < = >
! " # "
Cardinalidade máxima no DER
& ' ( ) & * * + , - & + - . + / 0 / ) ) 1 2 03 + 4 &
5 6 7 8 9 : 8 ; 6 < : = > & 2 ?3 4 + 4 & + / @ + 4 /
/ ( / * ? / 4 + + 2 / ? + A B / C ( / 4 & . & * ? + )
+ * * / 03 + 4 + * . - 3 ? + * > D 2 E C / 0 / ) ) 1 2 03 + * 4 &
6 ; 7 9 6 F 8 5 =
G = : 8 H I =
5 6 7 8 9 : 8 ; 6 < : = 6 ; 7 9 6 F 8 5 =
J
K
Cardinalidade máxima - valores
Para projeto de BD relacional
Dois valores de cardinalidades máximas são usados
Classificação de relacionamentos
Cardinalidade máxima pode ser usada para classificar relacionamentos binários
Relacionamento binário
Relacionamentos binários
Relacionamentos 1:1
7 6 = 8
8 8 ; 6 < : =
6 ; 7 9 6 F 8 5 =
8 G = 8 H I =
; 6 8
Relacionamentos 1:n
8 G < = < 9 H I = 9 =
2
6 ; 7 9 6 F 8 5 = 5 6 7 6 < 5 6 < : 6
2
6 ; 7 9 6 F 8 5 =
3 3 3 4
Relacionamentos n:n
) * + , * - . * ) * + , * / . /
Exercício Identificar cardinalidades
Deseja-se construir um banco de dados para um sistema de vendas. Em cada venda são vendidos vários produtos e um determinado produto pode
aparecer em diferentes vendas. Cada venda é efetuada por um vendedor para um determinado cliente. Um
produto está armazenado um uma prateleira.
Exercício 3.6 Identificar relacionamentos
! " " # " $ %
& ' # " "
# " ( ) *
+ ( , "
%
+ - " $ , , " "
, % & , , , " ' " %
- " , " # , . / " , %
& , , " # ' " %
Exercício 3.6 Identificar relacionamentos
Relacionamento ternário
Cardinalidade em relacionamento ternário
Exercício Relacionamento ternário
Identifique as entidades, os relacionamentos e as
respectivas cardinalidades para o seguinte problema:
Em uma empresa de desenvolvimento de sistemas informatizados, pessoas são alocadas a tarefas. No momento da alocação da pessoa a tarefa, também lhe é alocado um equipamento para resolver a tarefa.
Exercício 2.7
Mostre como o modelo ER da ao lado pode ser
representado sem uso de relacionamen tos ternários, apenas
usando
relacionamen
Exercício 2.7 (solução)
Exercício 2.7 (solução incorreta)
Cardinalidade mínima
Número mínimo de ocorrências de entidade que são associadas a uma ocorrência de uma entidade
através de um relacionamento
Para fins de projeto de BD, consideram-se apenas duas cardinalidades mínimas
& ' ( ) * + ( , + * ( * - . / + . ( 0
& ' ( ) * + ( , + * ( * - . / + . ( 1
Denominação alternativa:
& ' ( ) * + ( , + * ( * - . / + . ( 1 2 3 ( 4 4 & '+ ( 5 6 & & 7 )+ 8 ( 9 : )+ ( ;
Cardinalidade mínima - DER
Exemplo - entidades e relacionamentos
Exercício 2.15
Modifique as cardinalidades mínimas de forma a especificar o seguinte:
& . ' ) 4 & 6 & < & * - - 4 9 ( ) ( + & + 4 9 & * - - < & 4 4 + )
( & . - & 4 . ( * + 4 ' + < , + ( - . 4 - ' ) ) / ' , &
& . ( , & . - 4 . & - 6 & + 4 ' )+ 9 & - . - .
' ) 4 & * - - < - ) . ( - ' - ) < & ) ( , 8 . 9 - . < & & 7 ( ' &
* - * ( * & 4
Atributo
Dado ou informação que é associado a cada
ocorrência de uma entidade ou de um relacionamento
Exercício Identificar atributos
Atributos com cardinalidade
Cardinalidade mínima
& ( 9 )+ 7 9 & & 7 )+ 8 ( 9 : )+ & ' ( ) * + ( , + * ( * - . / + . ( 3 1 ;
& ( 9 )+ 7 9 & & < '+ & ( , ' ( ) * + ( , + * ( * - . / + . ( 3 0 ;
Cardinalidade máxima
& ( 9 )+ 7 9 & . & & ( , & ) ( * & ' ( ) * + ( , + * ( * - . + . ( 3 1 ;
& ( 9 )+ 7 9 & . , 9+ ( , & ) ( * & ' ( ) * + ( , + * ( * - . + . ( 3 ;
Atributo com cardinalidade
Exercício 2.16
Sem usar
& ( 9 )+ 7 9 & 4 & < '+ & ( + 4 - .
& ( 9 )+ 7 9 & 4 . , 9 + ( , & ) ( * & 4
construa um DER que contenha as mesmas informações do modelo anterior
Atributo em relacionamento