Professional Documents
Culture Documents
Banco de Dados I
Modelo Entidade-Relacionamento
Ronaldo Celso Messias Correia
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:
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
u n e s p
Projeto de Banco de Dados
Modelo bastante conhecido usado na criao do esquema conceitual
Modelo EntidadeRelacionamento
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
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
Funcionrio
Departamento
u n e s p
Atributos
Valores que representam propriedades das entidades e
relacionamentos no mundo real Tipos:
Atributo Multivalorado: possui mais de um valor para cada entidade que caracteriza
Telefones
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
u n e s p
Conjunto de Relacionamentos
O grau de relacionamento: o nmero de entidades
participantes
Exemplo MER:
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
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:
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
u n e s p
Cardinalidade muitos para muitos
Exemplos:
Funcionrio
Participao
Projetos
Mdico
Consulta
Paciente
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
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
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
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
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?
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)
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
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:
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
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
O relacionamento necessrio? Ele til? redundante? Se redudante, retirar? Qual sua finalidade? (Documentar) Verbos indicam possveis relacionamentos Analisar sempre as entidades aos pares
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
u n e s p
Notao James Martin
Empregado Departamento
= muitos = um
u n e s p
Notao James Martin
Empregado
(1,1)
Trabalha
(0,n)
Departamento
Empregado
Departamento
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.
u n e s p
Notao James Martin
Associaes de Um para Um
Motorista
Txi
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