Anda di halaman 1dari 4

19/03/2018

Modelo Entidade-
Banco de Dados Relacionamento

Prof. MSc. Douglas Rodrigues


E-mail: dogrodrigues@gmail.com

Ciência da Computação Banco de Dados

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento


3 4

 Grande parte dos bancos de dados podem ser  Especialização


modelados com os conceitos básicos do DER  Resultado da separação de entidades de nível
 No entanto, algumas extensões permitem superior, formando um conjunto de entidades de
refinamentos que podem ser muito úteis nível inferior
 Modelo Entidade-Relacionamento estendido:  Ou seja, um conjunto de entidades pode conter
subgrupos de entidades que são, de alguma forma,
 Especialização
diferentes de outras entidades do conjunto
 Generalização
 Por quê?
 Herança de atributos
 Atributos não se aplicam a todas as entidades
 Agregação

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento


5 6

 Especialização  Especialização
 Exemplo: conjunto de entidades conta, com
atributos número-conta e saldo
 Cada conta pode ser classificada como:
 Conta-corrente: com atributos adicionais data-abertura e
valor-limite
 Conta-poupança: com atributos adicionais taxa-juros e data-
última-movimentação
 Então:
 Conta: conjunto de entidades de nível superior   Uma conta pode ser uma conta-corrente ou uma
superclasse conta-poupança
 Conta-corrente e conta-poupança: conjuntos de entidades de
 Pode também ser as duas, ou nenhuma delas
nível inferior  subclasses

1
19/03/2018

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento


7 8

 Generalização  Generalização
 Processo inverso da especialização
 Resultado da união de dois ou mais conjuntos de
entidades de nível inferior produzindo um conjunto
de entidades de nível superior
 Ou seja, vários conjuntos de entidades são
sintetizados em um conjunto de entidades em alto
nível, com base em atributos comuns
 Por quê?
 Uma conta deve ser uma conta-corrente ou uma
conta-poupança
 Atributos são comuns a dois ou mais conjuntos de
entidades  E pode ser somente uma delas

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento


9 10

 Herança de atributos  Generalização e especialização podem conviver


 Consequência do processo de generalização e/ou no mesmo conjunto de entidades
especialização  Exemplo: cada empregado é ou um secretário ou
 Subclasses herdam atributos da superclasse um encarregado-empréstimo
 Cada secretário ou encarregado-empréstimo tem um
gerente, que por sua vez é um empregado

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento


11 12

 Podem haver sucessivos refinamentos  Agregação


 Modelo E-R possui algumas limitações
 Por exemplo, não consegue expressar relacionamentos
entre relacionamentos
 Solução: mecanismo de agregação
 Transformação de um conjunto de relacionamentos em
conjunto de entidades

2
19/03/2018

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento


13 14

 Agregação  Agregação
 Exemplo: empregado que trabalha em um projeto e  Exemplo: empregado que trabalha em um projeto e
usa diversas máquinas para realizar seu trabalho usa diversas máquinas para realizar seu trabalho
 Agregação  abstração através da qual
relacionamentos são tratados como entidades de nível
mais alto

Modelo Entidade-Relacionamento Exercícios


15 16

 Resumindo... 1) Dê um exemplo de generalização, mostrando os atributos


inerentes a cada conjunto de entidades.
 Diagrama E-R representa situações do mundo real,
2) Dê um exemplo de especialização, mostrando os atributos
isto é, quais objetos do mundo que se relacionam,
inerentes a cada conjunto de entidades.
e como estes se relacionam
3) Construa um DER com um exemplo real de agregação,
 Portanto, para se construir diagramas E-R, deve-se mostrando os atributos de cada conjunto de entidades.
conhecer as regras que regem os negócios

Exercícios Exercícios
17 18

4) Construa diagramas entidade-relacionamento para as b) Em um hospital, um paciente pode realizar consultas com vários
situações a seguir. Utilize os conceitos de generalização, médicos. Cada consulta pode ter vários exames realizados.
Devem ser armazenados os dados da consulta (data, horário e
especialização e agregação.
motivo) e os dados dos exames (descrição e resultado). Cada
a) Em uma seguradora de automóveis, um cliente tem pelo menos consulta pode resultar também na indicação de vários
um carro e um carro pertence a um único cliente. Cada carro medicamentos a serem ministrados ao paciente. Não é obrigatória
possui um número de acidentes associados a ele, devendo ser a indicação, mas se ela existir, devem ser armazenadas a
armazenados a data, o local e uma descrição do acidente. O quantidade e a forma de consumo (periodicidade).
acidente pode ser com vítima ou sem vítima. Se for com vítima,
c) Em uma biblioteca, há vários tipos de materiais (livros, revistas e
devem ser armazenado um histórico, a data, e o valor gasto com
audiovisual). Para os livros são armazenados o autor e a editora;
indenização das vítimas. Se for sem vítima deve ser armazenado
as revistas têm número, volume e data; os audiovisuais têm o
o valor gasto com danos materiais.
nome do diretor e o tempo de duração. Um cliente pode retirar
vários materiais e um material pode ser retirado por vários
clientes. Para toda retirada devem ser armazenadas a data de
retirada e a data de devolução. Os materiais devolvidos com
atraso têm uma multa. Sobre a multa, devem ser armazenados a
quantidade de dias e o valor.

3
19/03/2018

Exercícios
19

d) Em uma construtora, os funcionários são classificados como


administrativos ou engenheiros. Para todos os funcionários,
devem ser armazenados: nome, endereço e telefone. Para os
engenheiros, deve ser armazenado o número do CREA, o ano de
formatura e a especialidade. Um engenheiro pode gerenciar vários
projetos, sendo que cada projeto é gerenciado obrigatória e
unicamente por um engenheiro. Um funcionário pode trabalhar em
vários projetos ao mesmo tempo. Os projetos são numerados
sequencialmente para cada um dos engenheiros. Por exemplo, há
os projetos 1, 2 e 3 para o engenheiro Roberto; também há os
projetos 1 e 2 para o engenheiro João. Um projeto pode envolver
vários funcionários e um funcionário pode estar envolvido em
vários projetos ao mesmo tempo. Deve ser armazenada a data de
início e fim que um funcionário trabalha em um projeto.

Anda mungkin juga menyukai