Você está na página 1de 34

u n e s p

Banco de Dados I
Modelo Entidade-Relacionamento
Ronaldo Celso Messias Correia

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Sistema de Banco de Dados
Uma coletnea de conceitos que podem ser utilizados
para descrever a estrutura de um banco de dados (tipos de dados, relacionamentos e restries) e tambm um conjunto de operaes bsicas para especificar recuperaes e atualizaes no banco de dados Categorias de Modelos de Dados:

Diviso baseada nos tipos de conceitos oferecidos para descrever a estrutura do DB


Modelos de dados conceituais (alto nvel)

Oferece conceitos prximos ao usurio Exemplo: modelo entidade-relacionamento Descrevem a forma como os dados esto organizados dentro do computador Exemplo: modelo relacional Descrevem detalhes de como os dados esto armazenados no computador
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

Modelos de dados representacionais (ou de implementao)


Modelos de dados fsicos (baixo nvel)

u n e s p
Projeto de Banco de Dados
Modelo bastante conhecido usado na criao do esquema conceitual
Modelo EntidadeRelacionamento

No esquema lgico os dados so descritos de forma dependente do SGBD a ser usado


Em funo da maior parte dos SGBDs comerciais serem relacionais: Modelo Relacional

Projeto Fsico: so especificados detalhes de armazenamento interno das informaes que podem influenciar o desempenho das aplicaes (ex: estruturas de arquivos usadas no acesso s informaes)
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Modelo Entidade-Relacionamento
Modelo desenvolvido por Chen em 1976 Diversas extenses e notaes foram definidas ao longo do tempo Prov ao usurio um alto nvel de abstrao, e por conseguinte

facilita a construo de um esquema de BD A estrutura lgica do BD pode ser expressa graficamente pelo diagrama E-R Popular Simplicidade e Expressividade Um banco de dados representado por um modelo E-R, pode ser representado por uma coleo de tabelas O mapeamento entre os modelos E-R e Relacional relativamente simples. Existem vrias ferramentas destinadas a mapear o Modelo E-R para Relacional tambm chamado de esquema E-R ou diagrama E-R
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Modelo Entidade-Relacionamento
Diversas extenses e notaes foram definidas ao longo do tempo Os dados do mundo real so representados por meio de conjuntos
de entidades, relacionamentos entre esses e atributos que os caracterizam Conjunto de Entidades: representa um conjunto de elementos do mundo real que tm a mesma estrutura e o mesmo significado

Estrutural e semanticamente iguais Ex: Pessoas

Entidade: elemento do conjunto de entidades identificado por


caractersticas individuais definidas por meio do conceito de atributos

Atributos: Propriedades que descrevem a entidade ou o


relacionamento entre entidades Relacionamento: conjunto de associaes entre conjunto de entidades; podem ser caracterizados por atributos
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

Ex: coisas, objetos, pessoas (Murilo)

u n e s p
Conjunto de Entidades
As instncias de uma entidade no so representadas
no diagrama de Entidades e Relacionamento, mas so semanticamente interpretadas no mesmo MER no trata Entidades individuais, apenas Conjuntos de Entidades

Notao DER: retngulo

Funcionrio

Departamento

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Atributos
Valores que representam propriedades das entidades e
relacionamentos no mundo real Tipos:

Atributo Monovalorado: possui um valor para cada entidade que caracteriza


Idade

Atributo Multivalorado: possui mais de um valor para cada entidade que caracteriza
Telefones

Atributo Composto: quando o atributo tem vrios subcampos


Cidade Rua Estado

Endereo

Atributo Derivado: quando o valor de um atributo obtido por meio de valores de outros atributos. Ex: tempo_de_casa pode ser derivado do valor da data_contratao
Tempo_de_casa
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Atributos
Chave = Atributo ou um conjunto de atributos que, com seus

valores, consiga identificar uma nica entidade dentro do conjunto de entidades Uma chave deve ser mnima no sentido de que se a chave for composta, nenhum atributo que a compe poder ser retirado, e ainda sim, a composio resultante continuar sendo chave o principal meio de acesso a uma entidade Outras possveis chaves no so indicadas no diagrama, e no so contempladas pelo MER, mas podem ser anotadas separadamente, para efeito de documentao Chave Composta: mais de um atributo compe a chave de um conjunto de entidades. A concatenao de todos eles indica a chave nica Notao DER: grifar atributo chave
RA
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Conjunto de Relacionamentos
Relacionamento uma associao entre uma ou vrias
entidades Conjunto de Relacionamentos um conjunto de relacionamentos de mesmo tipo

Expressam uma rica semntica entre os conjuntos de


entidades por meio dos conceitos como:

Cardinalidade Restrio de participao (total ou parcial) Grau de Relacionamento

Esses conceitos impem restries aos dados que


alimentaro o banco de dados Notao DER: losango
Trabalha

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Conjunto de Relacionamentos
O grau de relacionamento: o nmero de entidades
participantes

Dependendo do conjunto de entidades associadas entre si,


necessrio adicionar atributos em um relacionamento

Binrio, ternrio, etc.

Ex: Horas em Trabalha_Em entre Funcionrio e Projeto

Exemplo MER:

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Cardinalidade
A cardinalidade expressa o nmero de entidades as quais outra
entidade pode estar associada em um relacionamento Para um

Um para um (1 para 1)
Uma entidade em A est associada no mximo a uma entidade em B, e uma entidade em B est associada a no mximo uma entidade em A

Um para muitos (1 para N)


Uma entidade em A est associada a vrias entidades em B. Uma entidade em B, entretanto, deve estar associada no mximo a uma entidade em A

Muitos para um (N para 1)


Uma entidade em A est associada a no mximo uma entidade em B. Uma entidade em B, entretanto, pode estar associada a um nmero qualquer de entidades em A

Muitos para muitos (N para N) - pode ser substituido por qualquer outra letra, como M, P, Q)
Uma entidade em A est associada a qualquer nmero de entidades em B e uma entidade em B est associada a um nmero qualquer de entidades em A
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Cardinalidade 1 para 1
Exemplos:

Um funcionrio gerencia no mximo 1 departamento. Um departamento gerenciado por no mximo um funcionrio

Funcionrio

Gerencia

Departamento

f1 f2 f3
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

d1 d2 d3

u n e s p
Cardinalidade 1 para muitos
Exemplos:

Um funcionrio est lotado no mximo em 1 departamento. Um departamento tem at N funcionrios lotados nele
Funcionrio
1

Lotados

1
1

Departamento

Sentido da leitura

Sentido da leitura

f1 f2 f3 f4 f5

d1 d2 d3

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Cardinalidade muitos para muitos
Exemplos:

Um funcionrio participa de vrios projetos. Um projeto pode ter a participao de at N funcionrios


f1 f2 f3 p1 p2 p3

Funcionrio

Participao

Projetos

Mdico

Consulta

Paciente

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Cardinalidade mxima e mnima
Indica se a participao das ocorrncias de entidades
no relacionamento obrigatria ou opcional
notao de par de cardinalidades: (mnima, mxima)

Funcionrio

(1,N)

Lotados

(0,1)

Departamento

Um funcionrio pode estar lotado no mximo em 1 departamento. Um departamento obrigatoriamente tem at N empregados lotados nele

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Cardinalidade mxima e mnima
Funcionrio
(0,1)
Gerencia

(0,1)

Departamento

Funcionrio

(0,N)
Participao

(0,N)

Projetos

Funcionrio

(1,1)
Coordenao

(0,2)

Projetos

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Grau de Relacionamento
Indica quantos conjuntos de entidades esto envolvidos
em determinado relacionamento Os relacionamentos podem ter associado vrios conjuntos de entidades, caracterizando:

relacionamentos binrios (grau de relacionamento 2) relacionamentos ternrios (grau 3) relacionamentos quaternrios (grau 4), entre outros

importante observar que um relacionamento com grau


N > 2 s justificvel se no puder ser decomposto em relacionamentos com graus menores e ainda manter a semntica desejada
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Relacionamento Ternrio
Os relacionamentos entre mltiplas entidades expressam
um fato em que todas as entidades ocorrem simultaneamente, ou seja, todas as ocorrncias do relacionamento possuem, sempre, ligaes com todas as entidades envolvidas no relacionamento No pode existir de um relacionamento triplo, em um determinado momento, se transformar em duplo
ALUNO
N
Monitora

DISCIPLINA

PROFESSOR
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Relacionamento Ternrio
Para descobrir a cardinalidade do relacionamento
ternrio, deve-se prodecer da seguinte forma:

Separar a entidade ALUNO e analisar o par PROFESSOR, DISCIPLINA. Para cada par PROFESSOR / DISCIPLINA podemos ter de 1 at N ALUNOS relacionados Separar a entidade PROFESSOR e analisar o par ALUNO, DISCIPLINA. Para cada par ALUNO / DISCIPLINA podemos ter 1 e somente 1 PROFESSOR relacionado Separar a entidade DISCIPLINA e analisar o par PROFESSOR, ALUNO. Para cada par PROFESSOR / ALLUNO podemos ter de 1 at N DISCIPLINAS relacionadas

Sempre que existe uma ocorrncia no


relacionamento , esta apresenta referncia s trs entidades
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Relacionamento Ternrio
Podemos tentar quebrar o relacionamento ternrio
em vrios binrios O problema a perda de informaes semnticas

A informao representada por um conjunto de relacionamentos ternrio nem sempre pode ser obtidada apenas com conjunto de relacionamentos binrios ex: como responder: Aluno A auxilia Professor P em qual Disciplina?

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Relacionamento Ternrio
Um mesmo Conjunto de Entidades pode
desempenhar vrios papis num Conjunto de Relacionamentos Uma Empresa (vendedora) negocia Produtos com outra Empresa (compradora)

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Auto-Relacionamento
Representa uma associao entre ocorrncias de uma mesma
entidade Requer a identificao de papis

Papel do relacionamento: utilizado quando no clara a participao de um determinado conjunto de entidades em um relacionamento A representao do papel extremamente importante quando se trata de um relacionamento unrio ou auto-relacionamento

Ex: Um Funcionrio pode ser supervisionado por no mximo


1 Funcionrio. Um Funcionrio pode supervisionar no mximo N Funcionrios.

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Entidade Fraca
Conjunto de entidades que no possui identificao prpria Entidade que no tem atributos que possam identific-la
univocamente

sua identificao depende de um relacionamento com uma entidade de outro conjunto O identificador de um conjunto de entidades fracas tambm chamado de chave parcial de um conjunto de entidades A chave primria de um conjunto de entidades fracas formada pela chave primria do conjunto de entidades fortes vinculada mais o identificador do conjunto de entidades fracas Num relacionamento entre as entidades Funcionrio e Dependente, o Dependente s existe se houver um Funcionrio a ele associado linha dupla no retngulo e no losango do relacionamento sublinhar com llinha tracejada a chave parcial
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

Ex:

Notao DER:

u n e s p
Entidade Fraca
Exemplos:

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Restrio de Participao
Mostra se a existncia de uma entidade
depende de outra entidade por meio de um relacionamento H dois tipos de restrio de participao:

participao total: toda entidade em um conjunto de entidades precisa ser relacionada com a entidade correspondente no relacionamento em questo participao parcial: somente parte do conjunto de entidades relacionada entidade correspondente no relacionamento
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Restrio de Participao
Participao total ou Dependncia Existncial:

Uma entidade s existe se estiver associada a outra entidade por meio de um relacionamento Ex: uma entidade Ementa tem que participar de um relacionamento Possui, ou seja, deve estar associada a uma entidade Disciplina

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Reconhecendo Entidades / Relacionamentos
Lista de perguntas teis para identificar entidades
em um contexto:

Dicas:

Que coisas so trabalhadas? O que pode ser identificado por nmero, cdigo? Essa coisa tem atributos? Esses atributos so relevantes, pertinentes? Essa coisa pode assumir forma de uma tabela? um documento externo (recibo, fatura, nota fiscal)? Se sim, forte candidato entidade. Tem significado prprio? Qual a entidade principal do contexto? Substantivos que no possuem atributos podem ser atributos de outras entidades Adjetivos colocados pelos usurios indicam normalmente atributos de uma entidade
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Reconhecendo Entidades / Relacionamentos
Dicas: (cont)

Verbos indicam provveis relacioanamentos Advrbios temporais indicam provveis atributos de um relacionamento Procure sempre visualizar a entidade principal do contexto sob anlise

Dicas para reconhecer e inserir relacionamentos


no modelo:

O relacionamento necessrio? Ele til? redundante? Se redudante, retirar? Qual sua finalidade? (Documentar) Verbos indicam possveis relacionamentos Analisar sempre as entidades aos pares

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Notao James Martin
Notao de Peter Chen interessante e bastante expressiva,
porm para grandes modelos torna sensivelmente confuso, com muitos cruzamentos e complicada de ser lido As ferramentas Case utilizam a notao da Engenharia de informaes ou notao de James Martin

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Notao James Martin
Empregado Departamento

Exemplo de Modelagem, onde:

= muitos = um

= a ocorrncia do relacionamento opcional; = a ocorrncia do relacionamento obrigatria;

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Notao James Martin

Empregado

(1,1)

Trabalha

(0,n)

Departamento

Empregado

Departamento

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Notao James Martin
As principais diferenas entre as notaes:

Os relacionamentos so representados apenas por uma linha que une as duas entidades; Somente relacionamentos binrios; A notao de cardinalidade mxima e mnima grfica, sendo assim: o smbolo mais prximo ao retngulo a representao da cardinalidade mxima e o mais distante a cardinalidade mnima.

Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Notao James Martin
Associaes de Um para Um
Motorista

Txi

Associaes de Um para Muitos


Estado Cidade

Associaes de Muitos para Muitos


Advogado Processo
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

u n e s p
Exerccio
Uma empresa organizada em departamentos, cada um
com um nome nico, uma sigla e um funcionrio responsvel por gerenci-lo. Uma data determina quando o funcionrio iniciou suas atividades de gerncia no departamento. Um departamento da empresa controla vrios projetos, cada um com um cdigo nico e um nome. Um funcionrio da empresa est vinculado a um departamento, mas pode trabalhar em vrios projetos, sendo determinado o nmero de horas semanais dedicadas a cada um. Alm disso, todo funcionriotem um supervisor direto. Para cada funcionrio so armazenadas informaes como: nome, CPF, endereo, telefone(s) de contato,salrio e dependentes (primeiroNome, idade, parentesco)
Ronaldo Celso Messias Correia ronaldo@fct.unesp.br

Você também pode gostar