Banco de Dados – Exemplos e exercícios de modelagem (DER e MER
Prof. MS Wagner Siqueira Cavalcante
•
•
•
•
•
•
•
1.
Em princípio, qualquer retângulo no DER (entidade forte ou fraca) será representado por uma tabela.
Em situações específicas, determinados relacionamentos serão representados por tabelas também (M:N).
Cada tabela deve ter, nos títulos das colunas, os atributos simples da entidade. Os atributos compostos, no
entanto, podem (ou devem) ser expandidos (ou divididos) em colunas distintas (no caso de data, p.ex., não é
necessário expandi-la em dia, mês e ano, porém, sendo necessário, faça-o; no caso de endereço, p.ex.,
normalmente é necessário expandir-se).
Os atributos que representam a chave primária devem ser destacados (grifados com linha contínua).
Os atributos multivalorados serão "convertidos" em entidades fracas, dependentes da entidade pai (ou mãe).
No DER, os atributos não podem ser exportados (para outra entidade) em hipótese alguma.
Algumas tabelas, entretanto, podem receber os atributos (chave primária) das entidades, com as quais se
relacionam, como chave estrangeira, respeitando as regras adequadas (1:1, 1:N, p.ex.).
Relacionamentos um para muitos (1:N):
• Criar tabela para a entidade de cardinalidade "1", com somente os seus atributos e, para a de cardinalidade
"N", idem, adicionando-se os atributos da chave primária de "1", como chave estrangeira (foreign key).
3.1. Uma instituição bancária permite que cada cliente possa controlar uma ou várias contas-correntes,
contudo, esta conta não pode ser compartilhada por outros clientes.
nome
Outros...
Cliente
IDcliente nome
111
Ana
222
José
333
Carlos
444
Claudia
3.2.
3.3.
3.4.
abertura
nrconta
IDcliente
1
Cliente
2.
MREL)
N
possui
...
t ip o
Conta
Conta
nrconta abert
X01
...
X02
...
X03
...
X04
...
IDcliente
111
111
222
444
tipo
...
...
...
...
Uma pessoa pode alugar um ou vários veículos, porém, o contrato será assinado por somente um
locatário.
Um funcionário está alocado a um único departamento, que, por sua vez, aloca vários funcionários.
Um encarregado de máquinas pode ter vários equipamentos sob sua responsabilidade, os quais contam
com somente um responsável.
Atributo multivalorado ( 1:N forte-fraca):
• Este tipo de atributo é, por essência, um atributo, e não uma entidade, porém permite vários conteúdos
possíveis, simultaneamente. Sua representação, no entanto, será feita em forma de entidade fraca,
dependente de sua entidade original. Como não tem uma chave primária, contará com um atributo que
consiga identificá-lo entre aqueles relacionados com a entidade dominante (como 1º, 2º, nº. daquela
entidade), contudo podendo se repetir no conjunto de todas as entidades deste conjunto fraco.
1.1.
Um cliente pode possuir mais que um número de telefone.
ID-cli
Cliente
Cliente
Nome_cli
Outros...
Seqüência
ID-cli
telefones
Nome_cli
1
N
tem
Outros...
número
DDD
Tabela Cliente
Tabela Telefones
id_cli
id_cli
nome_cli
Telefones
sequencia
10
10
1
20
10
2
30
20
1
…
20
2
ddd
numero
Banco de Dados – Exemplos e exercícios de modelagem (DER e MER
Prof. MS Wagner Siqueira Cavalcante
3.
Relacionamentos um para um (1:1):
• Criar tabelas para as entidades, podendo adicionar a chave estrangeira, de uma para a outra (não para
ambas, pois a referência múltipla provoca dead lock, ou seja, cada uma delas esperando que a outra seja
primeiramente preenchida), especialmente quando há alguma prioridade de uma sobre a outra (neste caso,
a tabela com maior acesso recebe a chave da de menor fluxo).
2.1. Um motorista de taxi em uma cooperativa tem, à sua disposição, unicamente um automóvel, o qual
permite apenas um condutor a ele associado.
nome
Outros...
Motorista
codmot
2.2.
2.3.
4.
MREL)
nome
...
1
dirige
placa
marca
placa
codmot
um ou outro!
1
modelo
cor
Automóvel
placa
marca
...
codmot
Uma instituição financeira, ao realizar seus contratos de empréstimo bancário, permite que cada cliente
contraia um único empréstimo por vez, devendo, primeiramente, quitar seu débito anterior. Cada
empréstimo, por sua vez, terá unicamente este cliente como seu responsável.
Uma empresa determina que cada funcionário, no exercício de sua função, deve contar com
exclusivamente uma máquina, pela qual será o único responsável.
Relacionamentos muitos para muitos (M:N):
• O relacionamento também é modelado em tabela (com as chaves das entidades envolvidas, lógico), além
das entidades.
4.1.
Uma instituição bancária permite que cada cliente possa controlar uma ou várias contas-correntes,
compartilhadas por outro ou mais clientes (e/ou).
nome
Outros...
M
Cliente
Cliente
IDcliente nome
111
Ana
222
José
333
Carlos
444
Claudia
...
nrconta
IDcliente
possui
Possui
IDcliente nrconta
111
X01
111
X02
222
X02
444
X04
N
abertura
t ip o
Conta
nrconta
X01
X02
X03
X04
Conta
abert
...
...
...
...
tipo
...
...
...
...
Banco de Dados – Exemplos e exercícios de modelagem (DER e MER
Prof. MS Wagner Siqueira Cavalcante
5.
MREL)
Exercícios, misturando tudo...:
5.1.
Na página 11 do Livro do Rogério Costa, a figura 1.3 propõe um modelo (MER) para o
desenvolvimento de uma base de dados e consultas sobre ela.
Matrícula
Nome
CPF
Data de nascimento
Endereço
nacionalidade
Código
Nome
Editora
Preço
Lançamento
0,1
publica
0,N
Livro
1,1
Assunto
escrito por
0,N
Descriçã
Sigla
é de um
Uma disciplina é ministrada por um único professor, o qual deve ministrar ao menos uma e pode
lecionar em muitas disciplinas. O professor deve informar se tem algum telefone e os números de
todos, caso os possua.
Logradouro
CEP
cidade
estado
Prontuário do Professor
Data de nascimento
Nome do Professor
Endereço
Código da disciplina
Nome da Disciplina
Ementa da Disciplina
1..M
Disciplina
ministra
5.3.
Autor
1,N
Código
Data de contrato
5.2.
1,N
1
Professor
1
possui
0..N
Telefone
Um aluno pode se matricular em muitas disciplinas e cada disciplina pode ter vários alunos, a qual só
pode ser ministrada por um único e exclusivo professor, que pode ministrar uma ou mais disciplinas.
Tanto os alunos, quanto os professores, devem informar seus números de telefones para contato,
porém tais informações não podem se misturar entre alunos e professores.
Prontuário do Professor
Data de nascimento
Nome do Professor
Endereço
Código da disciplina
Nome da Disciplina
Ementa da Disciplina
1..M
Disciplina
ministra
1
Professor
1
1..M
Aluno
1
0..N
Logradouro
CEP
cidade
estado
RA do Aluno
Data de nascimento
Nome do Aluno
Endereço
matricula
Logradouro
CEP
cidade
estado
possui
1..M
5.4.
Seqüência
ddd
Número do telefone
Complemento (ramal)
possui
0..N
Sequência (1..N)
ddd
Número do telefone
Complemento (ramal)
Telefone
Sequência (1..N)
ddd
Número do telefone
Complemento (ramal)
Telefone
Um cliente é cadastrado e pode (ou não) contrair muitos empréstimos sozinho ou compartilhado, cada
qual pago em parcelas e administrado por um único gerente, que tem uma mesa específica e exclusiva
a ele alocada, sem a qual não pode ficar.
Código do Cliente
Nome do Cliente
Endereço
Cliente
1..M
contrai
Código do Gerente
Número do empréstimo
Logradouro
CEP
cidade
estado
Nome do Gerente
Data de admissão
Data de contrato
Valor do empréstimo
0..N
Empréstimo
0..N
administrado
1
Carnê
Gerente
0..1
paga-se
1..N
1
Número da folha
Valor da parcela
Data de
Data de
pagamento
alocado
1
Mesa
Local
Código Mesa
Download

Exemplos e exercícios de modelagem (DER e MER → MREL)