3
1 Banco de Dados / 1 Banco de Dados Banco de Dados / / 1 Prof. Edmundo Spoto e Profª Fátima Nunes Marques Prof. Edmundo Prof. Edmundo Spoto Spoto e e Prof Profª ª F Fá átima Nunes Marques tima Nunes Marques Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido Engenharia Engenharia da da Computa Computação ão UNIVASF UNIVASF BANCO DE DADOS BANCO DE DADOS Aula 4 Aula 4 Modelo Entidade Modelo Entidade- Relacionamento Relacionamento Banco de Dados / 2 Banco de Dados Banco de Dados / / 2 Prof. Edmundo Spoto e Profª Fátima Nunes Marques Prof. Edmundo Prof. Edmundo Spoto Spoto e e Prof Profª ª F Fá átima Nunes Marques tima Nunes Marques Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido Grande parte dos bancos de dados podem ser Grande parte dos bancos de dados podem ser modelados com os conceitos b modelados com os conceitos básicos do DER. sicos do DER. No entanto, algumas extensões permitem No entanto, algumas extensões permitem refinamentos que podem ser muito refinamentos que podem ser muito úteis. teis. Modelo Entidade Modelo Entidade-Relacionamento Estendido: Relacionamento Estendido: Especialização Generalização Conjuntos de entidades de nível superior e inferior Herança de atributos Agregação Banco de Dados / 3 Banco de Dados Banco de Dados / / 3 Prof. Edmundo Spoto e Profª Fátima Nunes Marques Prof. Edmundo Prof. Edmundo Spoto Spoto e e Prof Profª ª F Fá átima Nunes Marques tima Nunes Marques Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido Especializa Especialização ão Resultado da separação de entidades de nível superior, formando um conjunto de entidades de nível inferior. Por quê? Atributos não se aplicam a todas as entidades. Banco de Dados / 4 Banco de Dados Banco de Dados / / 4 Prof. Edmundo Spoto e Profª Fátima Nunes Marques Prof. Edmundo Prof. Edmundo Spoto Spoto e e Prof Profª ª F Fá átima Nunes Marques tima Nunes Marques Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido Exemplo: 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: superclasse conta-corrente e conta-poupança: conjuntos de entidades de nível inferior: subclasses Banco de Dados / 5 Banco de Dados Banco de Dados / / 5 Prof. Edmundo Spoto e Profª Fátima Nunes Marques Prof. Edmundo Prof. Edmundo Spoto Spoto e e Prof Profª ª F Fá átima Nunes Marques tima Nunes Marques Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido conta conta- corrente conta- poupança Especializa Especialização ão É UMA UMA Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido Uma conta pode ser uma conta-corrente ou uma conta- poupança. Pode também ser as duas, ou nenhuma delas. data-abertura valor-limite data- movimento Taxa juros número agência Banco de Dados / 6 Banco de Dados Banco de Dados / / 6 Prof. Edmundo Spoto e Profª Fátima Nunes Marques Prof. Edmundo Prof. Edmundo Spoto Spoto e e Prof Profª ª F Fá átima Nunes Marques tima Nunes Marques Diagrama Entidade Diagrama Entidade-Relacionamento Estendido Relacionamento Estendido Generaliza Generalização ã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. Por quê? Atributos são comuns a dois ou mais conjuntos de entidades.

AulaBDI4

Embed Size (px)

DESCRIPTION

modelagem da arquitetura de banco de dados

Citation preview

Page 1: AulaBDI4

11

Banco de Dados / 1Banco de DadosBanco de Dados / / 11

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

Engenharia Engenharia da da ComputaComputa ççãoãoUNIVASFUNIVASF

BANCO DE DADOSBANCO DE DADOS

Aula 4Aula 4Modelo EntidadeModelo Entidade --RelacionamentoRelacionamento

Banco de Dados / 2Banco de DadosBanco de Dados / / 22

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento EstendidoDiagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

�� Grande parte dos bancos de dados podem ser Grande parte dos bancos de dados podem ser modelados com os conceitos bmodelados com os conceitos báásicos do DER.sicos do DER.

�� No entanto, algumas extensões permitem No entanto, algumas extensões permitem refinamentos que podem ser muito refinamentos que podem ser muito úúteis.teis.

�� Modelo EntidadeModelo Entidade--Relacionamento Estendido:Relacionamento Estendido:– Especialização– Generalização– Conjuntos de entidades de nível superior e inferior– Herança de atributos– Agregação

Banco de Dados / 3Banco de DadosBanco de Dados / / 33

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

�� EspecializaEspecializaççãoão

– Resultado da separação de entidades de nível superior, formando um conjunto de entidades de nível inferior.

– Por quê? Atributos não se aplicam a todas as entidades.

Banco de Dados / 4Banco de DadosBanco de Dados / / 44

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

�� Exemplo:Exemplo:� Conjunto de entidades conta, com atributos

número-conta e saldo� Cada conta pode ser classificada como:

�conta-corrente : com atributos adicionais data-aberturae 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:

superclasse�conta-corrente e conta-poupança : conjuntos de

entidades de nível inferior: subclasses

Banco de Dados / 5Banco de DadosBanco de Dados / / 55

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

conta

conta-corrente

conta-poupança

EspecializaEspecializaççãoão

ÉÉ UMAUMA

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

Uma conta pode ser uma conta-correnteou uma conta-poupança .

Pode também ser as duas, ou nenhuma delas.

data-abertura

valor-limite

data-movimento

Taxa juros

número

agência

Banco de Dados / 6Banco de DadosBanco de Dados / / 66

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

�� GeneralizaGeneralizaççãoã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.

– Por quê? Atributos são comuns a dois ou mais conjuntos de entidades.

Page 2: AulaBDI4

22

Banco de Dados / 7Banco de DadosBanco de Dados / / 77

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

GeneralizaGeneralizaççãoão

conta

ÉÉ UMAUMA

conta-corrente

conta-poupança

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

Uma conta deve ser uma conta-correnteou uma conta-poupança . E pode ser somente uma delas.

data-abertura

valor-limite

data-movimento

Taxa juros

número

agência

Banco de Dados / 8Banco de DadosBanco de Dados / / 88

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

–Herança de atributos

– conseqüência do processo de generalização / especialização

– Subclasses herdam atributos da superclasse

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

Banco de Dados / 9Banco de DadosBanco de Dados / / 99

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

–Herança de atributos

EMPREGADO

MOTORISTA PROFESSOR

ÉÉ UMAUMA

nomecódigo endereco

CNH

classe CNHtitulacao

especialidade

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento EstendidoBanco de Dados / 10Banco de DadosBanco de Dados / / 1010

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido– Generalização e Especialização podem conviver no

mesmo conjunto de entidades– Exemplo: cada empregado é ou um secretário ou um

encarregado-empréstimo . Cada secretário ou encarregado-empréstimo tem um gerente , que por sua vez, é um empregado .

empregado

secretário Encarregado-empréstimo

gerente

ÉÉ UMAUMA ÉÉ UMAUMA

Banco de Dados / 11Banco de DadosBanco de Dados / / 1111

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido– Pode haver sucessivos refinamentos

EMPREGADO

MOTORISTA PROFESSOR

ÉÉ UMAUMA

nomecódigo endereco

CNH

classe CNHtitulacao

especialidade

ÉÉ UMAUMA

valorvalor --horahora

HORISTA SUBSTITUTO EFETIVO

datadata --contratocontrato

classificaclassifica ççãoão

Banco de Dados / 12Banco de DadosBanco de Dados / / 1212

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

�� AgregaAgregaççãoão

– Limitação do Modelo E-R ���� não consegue expressar relacionamentos entre relacionamentos.

– Solução: mecanismo de agregação ����

transformação de um conjunto de relacionamentos em conjunto de entidades.

Page 3: AulaBDI4

33

Banco de Dados / 13Banco de DadosBanco de Dados / / 1313

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

– Exemplo: empregado que trabalha em um projeto e usa diversas máquinas para realizar seu trabalho.

empregado projetotrabalha(1,N)

máquina

usa

quantidade

(1,N)

Banco de Dados / 14Banco de DadosBanco de Dados / / 1414

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

�� AgregaAgregaççãoão �� abstraabstraçção atravão atravéés da qual s da qual relacionamentos são tratados como entidades relacionamentos são tratados como entidades de nde níível mais alto.vel mais alto.

empregado projetotrabalha(1,N)

máquina

usaquantidade

(1,N)

(1,N)

(1,N)

Banco de Dados / 15Banco de DadosBanco de Dados / / 1515

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

�� Diagrama EDiagrama E--R representa situaR representa situaçções do mundo real, ões do mundo real, isto isto éé, , quaisquais objetos do mundo que se relacionam, e objetos do mundo que se relacionam, e comocomo estes se relacionam.estes se relacionam.

�� Portanto, para se construir diagramas EPortanto, para se construir diagramas E--R, deveR, deve--se se conhecer as conhecer as regras regras que regem os negque regem os negóócios.cios.

RESUMINDO...RESUMINDO...

Banco de Dados / 16Banco de DadosBanco de Dados / / 1616

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

Exercícios

1. Dê um exemplo de generalização, mostrando os atributos inerentes a cada conjunto de entidades.

2. Dê um exemplo de especialização, mostrando os atributos inerentes a cada conjunto de entidades.

3. Construa um DER com um exemplo real de agregação.

4. Construa diagramas Entidade-relacionamento para as situações abaixo. Utilize os conceitos de generalização, especialização e agregação.

a) Em uma seguradora de automóveis, um cliente tem pelo menos um carro e um carro pertence a um único cliente. Cada carro possui um número de acidentes associados a ele, devendo ser armazenados a data, o local e uma descrição do acidente. O acidente pode ser com vítima ou sem vítima. Se for com vítima, devem ser armazenados um histórico (contendo os nomes das vítimas e o tipo de lesão sofrida) e o valor gasto com indenização das vítimas. Se for sem vítima deve ser armazenado o valor gasto com danos materiais.

Banco de Dados / 17Banco de DadosBanco de Dados / / 1717

Prof. Edmundo Spoto e Prof ª Fátima Nunes MarquesProf. Edmundo Prof. Edmundo SpotoSpoto e e ProfProf ªª FFáátima Nunes Marquestima Nunes Marques

Diagrama EntidadeDiagrama Entidade --Relacionamento EstendidoRelacionamento Estendido

b) Em um hospital, um paciente pode realizar consultas com vários médicos. Cada consulta pode ter vários exames realizados. Devem ser armazenados os dados da consulta (data, horário e motivo) e os dados dos exames (descrição e resultado).

c) Em uma biblioteca há vários tipos de materiais (livros, revistas e audiovisual). Para os livros são armazenados o autor e a editora; as revistas têm número, volume e data; os materiais audiovisuais têm o 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.