Professional Documents
Culture Documents
Objetivos
Desenvolver o projeto conceitual de Banco de dados com
a utilizao do Modelo Entidade-Relacionamento.
Contedo
Modelo Entidade-Relacionamento.
Entidades, Atributos e Conjuntos de Entidades.
Tipos de Entidades.
Relacionamentos e Conjuntos de Relacionamentos.
Caractersticas
adicionais
Relacionamento.
do
Modelo
Entidade-
UNIDADE 2
MODELAGEM DE DADOS
USANDO O MODELO
ENTIDADE-RELACIONAMENTO
UNIDADE 2
Licenciatura em Computao
ATENO!
Lembre-se de que sua
participao e colaborao
so essenciais para o seu
aprendizado. Participe e interaja
com seus colegas de curso e com
seu tutor.
1 Introduo
Na unidade anterior, voc compreendeu que os Sistemas Gerenciadores de
banco de dados surgiram para solucionar problemas de redundncia, de inconsistncia,
de compartilhamento e segurana de dados em sistemas de informaes.
Voc conheceu, tambm, quais so as atividades e os profissionais envolvidos
em um sistema de banco de dados.
Nesta unidade, voc aprender a desenvolver um projeto conceitual de banco
de dados com a utilizao do Modelo Entidade-Relacionamento.
2 Modelo Entidade-Relacionamento
O Modelo Entidade-Relacionamento (MER) um modelo de dados de
alto-nvel, criado com o objetivo de representar a semntica associada aos dados do
minimundo. O MER utilizado na fase de projeto conceitual, em que o esquema
conceitual do banco de dados da aplicao concebido. Seus conceitos so intuitivos,
permitindo que projetistas de banco de dados capturem os conceitos associados aos dados
da aplicao, sem a interferncia da tecnologia especfica de implementao do banco de
dados. O esquema conceitual criado usando-se o MER chamado Diagrama EntidadeRelacionamento (DER).
Exemplo:
Uma aplicao hipottica, ou seja, a aplicao da locadora de vdeo (LV), servir
para ilustrar os conceitos envolvidos no MER. Os requisitos de banco de dados, bem como
o esquema conceitual dessa aplicao sero apresentados, ao mesmo tempo em que
sero introduzidos os conceitos do MER.
O banco de dados da LV deve armazenar, por exemplo, dados de funcionrios,
fitas, clientes e locaes. Inicialmente, os projetistas produziram a seguinte descrio do
minimundo:
Clientes locam mdias (VHS ou DVD) de filmes, auxiliados por funcionrios.
Somente clientes cadastrados podem realizar uma locao. Devem ser
armazenadas as seguintes informaes sobre o cliente: nome, cdigo, Rg,
Cpf, endereo, telefone, idade, data de nascimento, saldo, bnus.
Dependentes de clientes podem realizar locaes. Informaes dos
dependentes: nome, sexo, data de nascimento, tipo de dependncia (filho,
esposa, pai, me, etc).
O cliente recebe um bnus a cada filme de lanamento locado. Com dez bnus,
o cliente pode locar um filme de lanamento ou dois filmes que no sejam
lanamentos.
18
UNIDADE 2
Licenciatura em Computao
ntidades,
3 E
Entidades
Atributos
Conjuntos
INFORMAO!
Uma descrio mais detalhada
do minimundo ser apresentada
na seo que trata do projeto
conceitual de banco de dados.
de
Entidade
O objeto mais elementar que o MER representa a entidade. Uma entidade
algo do mundo real que possui uma existncia independente.
Atributo
Cada Entidade tem propriedades particulares que so chamadas de
atributos.
Valor de Atributo
Uma entidade tem um valor especfico para cada um de seus atributos (valor
de atributo).
INFORMAO:
Filmes, clientes e funcionrios
de uma locadora de vdeo
so representados como
Entidades.
INFORMAO:
O funcionrio de uma locadora
de vdeo pode ser descrito por
seus atributos: nome, cdigo,
Rg, Cpf, endereo, idade,
telefone residencial e salrio.
Atributo Composto
Alguns atributos podem ser divididos em subpartes com significados
independentes. Por exemplo, o atributo Endereo, da figura a seguir, composto de
outros atributos. Atributos como Endereo so chamados de Atributos Compostos.
CRC
Batatais Ceuclar
Banco de Dados
19
UNIDADE 2
Licenciatura em Computao
Atributo Multivalorado
Muitos atributos tm apenas um valor (univalorados). Porm, existem atributos
que podem ter um conjunto de valores (multivalorados).
Por exemplo, um cliente da locadora de vdeo pode ter um atributo telefone que
seja multivalorado.
Observe o exemplo na figura a seguir:
Atributo Derivado
Atributos derivados so aqueles valores obtidos aps algum processamento
das informaes do prprio banco de dados.
Por exemplo, idade de um cliente, tempo de locao, total de mdias locadas por
cliente, todos so atributos derivados.
idade = Data Atual Data de Nascimento.
20
UNIDADE 2
Licenciatura em Computao
Tipos de Entidade
ATENO!
Observe, no esquema ao lado,
que a1, a2 e a3 representam as
entidades do tipo de entidade
FUNCIONRIO; b1 e b2, as
entidades do tipo de entidade
FILME.
CRC
Batatais Ceuclar
Banco de Dados
21
UNIDADE 2
Licenciatura em Computao
Na figura anterior pode-se notar que a entidade c1, do tipo de entidade CLIENTE,
relaciona-se com a entidade l1, do tipo de entidade LOCAO, por meio do relacionamento
r1, do tipo de relacionamento REALIZA.
A semntica associada a esse tipo de relacionamento a de que Clientes
realizam locaes. Voc pode observar claramente que um tipo de relacionamento nada
mais do que um conjunto de relacionamento e que um relacionamento representa uma
associao entre entidades.
aractersticas Adicionais
4 C
Entidade-Relacionamento
do
Modelo
22
UNIDADE 2
Licenciatura em Computao
ATENO!
Um tipo de relacionamento
ternrio no pode ser substitudo
por trs relacionamentos binrios.
CRC
Batatais Ceuclar
Banco de Dados
23
UNIDADE 2
Licenciatura em Computao
Outra situao em que deve ser obrigatria a indicao dos papis quando o
tipo de relacionamento tiver uma semntica no-clara ou ambgua.
Por exemplo, o tipo de relacionamento DEPARTAMENTO GERENCIA PESSOA,
gera a seguinte dvida: o departamento que gerencia pessoa ou a pessoa que gerencia
departamento? Se a resposta for: a pessoa que gerencia departamento! Ento, o papel
de PESSOA, em relao ao tipo de relacionamento GERENCIA, gerente, e o papel de
DEPARTAMENTO, em relao ao tipo de relacionamento GERENCIA, gerenciado.
Observe outros exemplos de tipos de relacionamentos com ambigidade
semntica:
EMPRESA CONTRATA DEPARTAMENTO.
EMPRESA INVESTE PESSOA.
Existem algumas restries sobre tipos de relacionamentos. Observem quais
so elas.
Razo de Cardinalidade
A restrio razo de cardinalidade especifica a quantidade de instncias de
relacionamento que uma entidade pode participar.
O tipo de relacionamento binrio CLIENTE REALIZA LOCAO, da figura 8, tem
razo de cardinalidade 1:N (l-se: um-para-ene). Isto significa que cada entidade cliente
pode estar relacionada a inmeras entidades locao (ou muitas locaes relacionadas a
um cliente), mas uma entidade locao deve estar relacionada a apenas um cliente (uma
locao s pode ser de um cliente). As razes de cardinalidade mais comuns para tipos
de relacionamento binrio so: 1:1 (um-para-um), 1:N (um-para-ene) e M:N (eme-paraene).
24
UNIDADE 2
Licenciatura em Computao
Restrio de Participao
A restrio de participao especifica se a existncia de uma entidade depende
de outra entidade, por meio de um relacionamento.
Existem dois tipos de restries de participao: total e parcial. Se a Locadora
de Vdeo estabelece a regra de que todo contato deve ser de um fornecedor, ento, uma
entidade contato somente pode existir se ela participar em uma instncia de relacionamento
CONTATO-FORNECEDOR. A participao de CONTATO em CONTATO-FORNECEDOR
chamada total, o que significa que toda entidade contato deve estar relacionada a uma
entidade fornecedor via CONTATO-FORNECEDOR.
A restrio de participao total , algumas vezes, chamada dependncia
existencial. Por outro lado, no se espera, na figura 9, que todo fornecedor tenha um
contato; assim, a participao de FORNECEDOR no tipo de relacionamento CONTATOFORNECEDOR parcial. Isso significa que algumas entidades do conjunto de entidades
FORNECEDOR podem estar relacionadas a uma entidade contato, via CONTATOFORNECEDOR, mas no necessariamente todas.
Restrio Estrutural
A Restrio Estrutural especifica as quantidades mnima e mxima que uma
entidade pode participar de um tipo de relacionamento.
INFORMAO:
A Razo de Cardinalidade e
a Restrio de Participao
dependem das Regras de
Negcios.
CRC
Batatais Ceuclar
Banco de Dados
25
UNIDADE 2
Licenciatura em Computao
INFORMAO:
Atributos de tipos de
relacionamento de
cardinalidade 1:1 ou 1:N podem
ser includos como atributos
de um dos tipos de entidades
participantes.
Note que no faz sentido anexar o atributo TLF em LOCAO e nem em MDIA, uma
vez que TLF s tem significado na associao de uma mdia em uma dada locao.
Para exemplificar, considere o tipo de relacionamento DIRETOR DIRIGE FILME,
que tem cardinalidade 1:N (um diretor pode dirigir muitos filmes, mas, em nosso exemplo,
um filme s pode ser dirigido por um nico diretor). O atributo data-incio, data em que
um determinado diretor iniciou a direo de um filme , claramente, um atributo do tipo
de relacionamento DIRIGE. No entanto, esse atributo poderia ser anexado ao FILME,
uma vez que um filme s pode ser dirigido por um nico diretor, como estipulado neste
exemplo.
26
UNIDADE 2
Licenciatura em Computao
ATENO!
No exemplo da figura 12,
assumiu-se que nenhum
dependente de um mesmo
cliente ter a mesma
combinao de valores dos
atributos Nome e Tipo da
Relao. Assim, os atributos
Nome e Tipo da Relao
constituem a chave-parcial de
DEPENDENTE.
CRC
Batatais Ceuclar
Banco de Dados
27
UNIDADE 2
Licenciatura em Computao
28
UNIDADE 2
Licenciatura em Computao
Restrio de Participao:
do FILME: Parcial, pois o filme pode estar cadastrado, embora no exista
nenhuma mdia desse filme para ser locada.
da MDIA: Total, pois para que uma mdia exista no banco de dados, ela
deve, obrigatoriamente, ser de algum filme.
Atributos: no h.
CLIENTE REALIZA LOCAO
Razo de Cardinalidade (1:N), pois:
1 cliente pode fazer N locaes.
1 locao de 1 cliente.
Restrio de Participao:
do CLIENTE: Parcial, pois o cliente no obrigado a fazer uma locao para
que ele exista no banco de dados.
da LOCAO: Total, pois para que uma locao exista no banco de dados,
ela deve, obrigatoriamente, estar associada a um cliente.
Atributos: no h.
FUNCIONRIO EFETUA LOCAO
Razo de Cardinalidade (1:N), pois:
1 funcionrio pode efetuar N locaes.
1 locao efetuada por 1 funcionrio.
Restrio de Participao:
do FUNCIONRIO: Parcial, pois o funcionrio no obrigado a efetuar uma
locao para que ele exista no banco de dados.
da LOCAO: Total, pois para que uma locao exista no banco de dados,
ela deve, obrigatoriamente, ter sido efetuada por um funcionrio.
Atributos: no h.
LOCAO CONTM MDIA
Razo de Cardinalidade (M:N), pois:
1 locao pode conter M mdias.
1 mdia pode estar contida em N locaes.
Restrio de Participao:
da LOCAO: Total, pois uma locao no existe se ela no contiver pelo
menos um filme.
da MDIA: Parcial, pois uma mdia no precisa ter sido locada para que ela
exista no banco de dados.
Atributos: TLF (Tempo de Locao do Filme).
FUNCIONRIO COMPRA MDIA DE FORNECEDOR (ternrio)
Razo de Cardinalidade (M:N:O), pois:
1 funcionrio pode comprar M mdias de N fornecedores.
CRC
Batatais Ceuclar
Banco de Dados
29
UNIDADE 2
Licenciatura em Computao
30
UNIDADE 2
Licenciatura em Computao
CRC
Batatais Ceuclar
Banco de Dados
31
UNIDADE 2
Licenciatura em Computao
CEP
Rg
Cpf
cdigo
Cnpj
cdigo
Rg
Cpf
cdigo
32
UNIDADE 2
Licenciatura em Computao
CEP
Rg
Cpf
cdigo
bnus
Cnpj
cdigo
Rg
Cpf
cdigo
CRC
Batatais Ceuclar
Banco de Dados
33
UNIDADE 2
Licenciatura em Computao
34
UNIDADE 2
Licenciatura em Computao
7 Consideraes Finais
O Modelo Entidade-Relacionamento (MER) um modelo de dados de alto-nvel
utilizado pelos projetistas de bancos de dados, durante a fase de projeto conceitual do
banco de dados, para gerar o modelo conceitual de uma aplicao.
8 Referncias Bibliogrficas
ELMASRI, R.; NAVATHE, S. B. Sistemas de bancos de dados. So Paulo: Pearson (Addison
Wesley), 2005.
ATENO!
Adquira o hbito da leitura e da
pesquisa. Pesquise em revistas
e peridicos e visite os sites
recomendados. Lembre-se de
que, quando voc encontrar
novidades, compartilhe com
seus colegas de curso.
CRC
Batatais Ceuclar
Banco de Dados
35
Anotaes