Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte...
Transcript of Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte...
![Page 1: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/1.jpg)
Aula 3 – BD 1Modelo Entidade Relacionamento –
Parte 1
Profa. Elaine Faria UFU - 2018
![Page 2: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/2.jpg)
Processo do Projeto de um Banco de Dados
• A criação de uma aplicação de banco de dados envolve várias tarefas– Projeto do esquema de banco de dados– Projeto dos programas que acessam e
atualizam os dados– Projeto de um esquema de segurança para
controlar o acesso aos dados
![Page 3: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/3.jpg)
Processo do Projeto de um Banco de Dados
O projetista de banco de dados interage com os usuários da aplicação para entender as necessidades e representá-las de uma maneira alto nível
![Page 4: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/4.jpg)
Projeto de um Banco de Dados
• Passos– Análise dos requisitos
• Compreender quais dados serão armazenados no banco de dados
• Compreender quais aplicações serão construídas usando esses dados
• Compreender quais operações são mais frequentes
O que os usuários querem do banco de dados?
![Page 5: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/5.jpg)
Projeto de um Banco de Dados
• Passos– Projeto do banco de dados conceitual
• As informações obtidas no passo de análise são usadas para desenvolver uma descrição de alto nível dos dados
• Usa-se o modelo ER
Facilitar a discussão entre todas as pessoas envolvidas
![Page 6: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/6.jpg)
Projeto de um Banco de Dados
• Passos– Projeto lógico do banco de dados
• Escolher um SGBD para implementar o banco de dados
• Converter o projeto conceitual em um projeto lógico
Conversão ER Relacional
![Page 7: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/7.jpg)
Projeto de um Banco de Dados
• Passos– Refinamento do esquema
• Analisar o conjunto de relações para identificar problemas e refiná-las
Normalização das relações!
![Page 8: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/8.jpg)
Projeto de um Banco de Dados
• Passos– Projeto físico do banco de dados
• Verificar a carga de trabalho que o banco de dados irá suportar e fazer refinamentos para assegurar os critérios de desempenho
• Envolve a criação de índices em algumas tabelas ou re-projetar algumas partes do banco de dados
![Page 9: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/9.jpg)
Projeto de um Banco de Dados
• Passos– Projeto das aplicações e segurança
• Identificar as partes do banco de dados que devem estar acessíveis e as que não devem estar acessíveis
• Garantir que as regras de acesso são executadas
![Page 10: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/10.jpg)
Modelo Entidade-Relacionamento
• O modelo ER – Descrever os dados de aplicações do mundo
real em termos de objetos (entidades) e seus relacionamentos
– É largamente utilizado para o desenvolvimento da fase inicial do projeto de BD
– Fornece conceitos para partir de uma descrição informal dos usuários obter uma descrição mais detalhada
![Page 11: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/11.jpg)
Modelo Entidade-Relacionamento
• O modelo ER – É a técnica de modelagem mais difundida e
utilizada– Foi criada em 1976 por Peter Chen– É um modelo de dados conceitual de alto
nível• Compreensível a usuários
Diagrama Entidade-Relacionamento(DER)
![Page 12: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/12.jpg)
Entidade
• É um objeto do mundo real distinguível de outros objetos– Ex: cada pessoa em uma empresa é uma
entidade– Ex: o gerente do departamento de vendas
• Pode ser um objeto com existência física ou conceitual
• Descrito por propriedades atributos
![Page 13: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/13.jpg)
Entidade
• Coleção de entidades semelhantes Conjunto de entidades (Tipo-Entidade)– Ex: os empregados de uma empresa são as
entidades de um conjunto de entidades denominado Empregado
• Entidades de um mesmo conjunto de entidades– Compartilham atributos– É normal referenciar todas as entidades pelo mesmo
nome do tipo_entidade. Ex: Empregado
Baseado nos slides do Prof. Eduardo – ICMC-USP
![Page 14: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/14.jpg)
Atributos• Usados para descrever um conjunto de
entidades ou de relacionamentos– Ex: o conjunto de entidades Empregado pode ter os
seguintes atributos• Nome• Matrícula• Sexo• Idade• Endereço
Obs.: todas as entidades em um dado conjunto de entidades têm os mesmos atributos
![Page 15: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/15.jpg)
Atributos• Cada atributo tem um domínio de possíveis
valores– Ex: domínio do atributo nome de um Empregado
conjunto de 20 caracteres – Pode assumir o valor nulo
• Chave– É um conjunto mínimo de atributos cujos valores
identificam unicamente uma entidade em um conjunto de entidades
– Pode haver mais que uma chave candidata• Escolhe-se uma delas para ser a chave primária
![Page 16: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/16.jpg)
Atributos
• Tipo de Entidades Empregado - Atributos:cpf, nome, endereço– entidade e1:
• cpf: 11.111.111-11• nome: João da Silva• endereço: Rua xx, 200
![Page 17: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/17.jpg)
Representação - Empregado
Empregado
CPF Nome Endereço
![Page 18: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/18.jpg)
Atributos – ClassificaçãoSegundo Elmasri & Navathe
• Simples versus Compostos– atributo simples ou atômico:
• não pode ser decomposto (dividido) em atributos mais básicos
• exemplo: sexo {M, F}– atributo composto
• pode ser decomposto em atributos mais básicos• exemplo: atributo endereço: nome_rua, nro_casa,
complemento, nome_bairro, ...
Baseado nos slides do Prof. Eduardo – ICMC-USP
![Page 19: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/19.jpg)
Atributos – ClassificaçãoSegundo Elmasri & Navathe
• Monovalorados versus Multivalorados– atributo monovalorado
• possui um único valor para cada entidade• exemplo: idade
– atributo multivalorado• possui múltiplos valores para cada entidade
– exemplo: atributo telefone
• pode possuir limites inferior/superior com relação à multiplicidade dos valores assumidos
– exemplo: nro_min = 0, nro_max = 3
Baseado nos slides do Prof. Eduardo – ICMC-USP
![Page 20: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/20.jpg)
Atributos – ClassificaçãoSegundo Elmasri & Navathe
• Armazenado versus Derivado– atributo armazenado
• está realmente armazenado no BD– atributo derivado
• pode ser determinado através de outros atributos ou através de entidades relacionadas
• exemplos: idade = data_atual - data_nascimentonro_empregados = “soma de entidades”
• pode ou não ser armazenado no BD
Baseado nos slides do Prof. Eduardo – ICMC-USP
![Page 21: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/21.jpg)
Atributos – ClassificaçãoSegundo Elmasri & Navathe
• Valores NULL– Usado quando uma entidade não tem um
valor aplicável para um atributo– Usado quando o valor de um atributo para
uma entidade não é conhecido– Exemplo
• Atributo Telefone com o valor NULL para a entidade Pessoa indica que não se sabe o telefone da Pessoa
![Page 22: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/22.jpg)
Relacionamento
• É uma associação entre duas ou mais entidades– Ex: João trabalha no departamento farmacêutico
• Reuni-se um conjunto de relacionamentos similares em um conjunto de relacionamentos (Tipo-Relacionamento)– Ex: trabalha-em Empregado trabalha em um
Departamento
![Page 23: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/23.jpg)
Relacionamento• Formalmente
Um conjunto de relacionamentos é um conjunto de n-tuplas:{(e1,...,en)|e1 E1,...,en Em}
Cada n-tupla denota um relacionamento envolvendo n entidades e1,...,em onde cada entidade está em um conjunto de entidades Ei
Trabalha-em
Empregado Departamento2/9/92
3/3/94
13/4/98
24/11/99
Imagem retirada dos slides da Profa. Sandra - UFU
![Page 24: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/24.jpg)
Relacionamento
• Pode ter um conjunto de atributos descritivos– Armazenam informações sobre o relacionamento– Ex: João trabalha no departamento farmacêutico
desde janeiro de 2000.
Empregado Departamento
cpf nome End Tel
nome Or
Id-deptoTrabalha-em
DataIn
Imagem retirada dos slides da Profa. Sandra - UFU
![Page 25: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/25.jpg)
Relacionamento
• Deve ser unicamente identificado pelas entidades participantes– Ex: cada relacionamento trabalha_em deve
ser identificado pela matrícula do funcionário e código do departamento
• Uma instância de um conjunto de relacionamentos ‘Retrato’ do conjunto de relacionamentos em dado momento
![Page 26: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/26.jpg)
Relacionamento
• Pode envolver 2 ou mais entidades– Ex: associação entre empregado,
departamento e localização (ternário)
Empregado Departamento
cpf nome End Tel
nome Or
Id-deptoTrabalha-em
DataIn
LOCALEnd Capacidade
Imagem retirada dos slides da Profa. Sandra - UFU
![Page 27: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/27.jpg)
Relacionamento
• Pode envolver duas entidades do mesmo conjunto de entidades especificar o papel de cada uma
Empregado
cpf nome EndTel
Reporta_a
subordinadosupervisor
![Page 28: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/28.jpg)
Grau de um conjunto de relacionamentos
• Unário – é um relacionamento que envolve um único
conjunto de entidades– Indicado utilizar nome de papel
![Page 29: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/29.jpg)
Grau de um conjunto de relacionamentos
• Binário– É um relacionamento que envolve dois
conjuntos de entidades
• Ternário– É um relacionamento que envolve três
conjuntos de entidades
![Page 30: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/30.jpg)
• Relacionamento Ternário representa informações diferente de 3 conjuntos de relacionamentos binários!
• Ex: Fornecedor x Peça x Projeto
![Page 31: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/31.jpg)
Recurso Adicionais do Modelo ER
• Restrições nos Conjuntos de Relacionamentos– Limitam as combinações possíveis de entidades que
podem participar dos conjuntos de relacionamentos• Exemplos:
Um empregado deve trabalhar para algum departamento;Um empregado não precisa ser um gerente
– Restrições estruturais• Cardinalidade• Participação
Baseado nos slides do Prof. Eduardo – ICMC-USP
![Page 32: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/32.jpg)
Recurso Adicionais do Modelo ER
• Restrições de Cardinalidade– Especifica o número máximo de instâncias de
relacionamentos em que uma entidade pode participar
– Ex: relacionamento Trabalha_paraDepartamento:Funcionário
Cardinalidade 1:N– Tipos de cardinalidade
• 1:1, 1:N, N:1 e M:N
![Page 33: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/33.jpg)
Recurso Adicionais do Modelo ERSegundo Elmasri & Navathe
Imagem retirada dos slides do Prof. Eduardo – ICMC-USP
![Page 34: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/34.jpg)
Recurso Adicionais do Modelo ER
• Cardinalidade
• Gerência é considerado um-para-muitos indicando que um funcionário pode estar associado a muitos departamentos, enquanto departamento pode estar associado a no máximo um funcionário
• Trabalha_em é considerado muitos_para_muitos
Empregado Departamento
cpf nome End Tel
nome Or
Id-deptoGerencia
DataIn
N1
Imagem adaptada dos slides da Profa. Sandra - UFU
![Page 35: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/35.jpg)
Recurso Adicionais do Modelo ER
• Cardinalidade– Ex: Considerando que cada funcionário pode
gerenciar no máximo um departamento um-para-um
Imagem adaptada dos slides da Profa. Sandra - UFU
cpf
Empregado Departamento
nome End Tel
nome Or
Id-deptoGerencia
DataIn
11
![Page 36: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/36.jpg)
Recurso Adicionais do Modelo ER
• Cardinalidade para Relacionamentos Ternários
Fornecedor Projeto
Fnome
P_nomeFornece
Qtde
Peça Num_Peca
Imagem adaptada dos slides da Profa. Sandra - UFU
1 N
M
![Page 37: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/37.jpg)
Recurso Adicionais do Modelo ER
• Ternário
![Page 38: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/38.jpg)
Recurso Adicionais do Modelo ER
• Há também a notação (min,max)– Cada entidade está relacionada a pelo menos
min e no máximo max instâncias de relacionamento no conjunto de relacionamentos
![Page 39: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/39.jpg)
Recurso Adicionais do Modelo ER
• Restrição de Participação– Participação do conjunto de entidades no conjunto de
relacionamentos– Tipos de participação
• Total
• Parcial
Empregado Departamentonome End Tel
nome Or
Id-deptoTrabalha-em
DataIncpf
Empregado Departamentonome End Tel
nome Or
Id-deptoGerencia
DataIncpf
![Page 40: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/40.jpg)
Entidade Fraca
• Conjunto de entidades fracas – Não possuem atributos chave próprios– Identificadas considerando alguns de seus atributos
em conjuntos com a chave primária de uma outra entidade proprietária identificadora
– Devem ser mantidas as restrições• O conjunto de entidades proprietárias e o conjunto de
entidades fracas devem participar em um conjunto de relacionamentos um-para-muitos
• Representa dependência de existência– um conjunto de entidades fraca deve ter participação total no
relacionamento identificador
![Page 41: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/41.jpg)
Entidade Fraca
• Exemplo– Dependente e Funcionários
• Chave Parcial– Conjunto de atributos de um conjunto de
entidades fracas que identificam univocamente uma entidade fraca de uma determinada entidade proprietária
– Ex: nomedep
![Page 42: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/42.jpg)
Entidade Fraca
• Entidade forte– tem chave primária
• Entidade fraca– possui somente uma chave parcial
• Chave primária de uma entidade fraca– chave primária da entidade forte
correspondente+
– chave parcial da entidade fraca
Baseado nos slides do Prof. Eduardo – ICMC-USP
![Page 43: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/43.jpg)
Entidade Fraca
cpf
Empregado Dependentes
nome End Tel
nomed idade
Apólice
custo
Imagem adaptada dos slides da Profa. Sandra - UFU
![Page 44: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/44.jpg)
Projeto Conceitual de um BD• Identificar conjuntos de entidade e atributos
• Identificar chaves primárias
• Identificar conjuntos de relacionamento e seus atributos– Determinar o grau do relacionamento– Identificar as restrições que se aplicam sobre cada um
• Cardinalidade• Participação
• Identificar conjunto-entidade forte e conjunto-entidade fraca
Baseado nos slides do Prof. Eduardo – ICMC-USP
![Page 45: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/45.jpg)
Exemplo de um DER
Imagem retirada dos slides do Prof. Eduardo – ICM-USP
![Page 46: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/46.jpg)
Exercício
• Exercício 2.3 do Livro em Português do Ramakrishan
Capítulo 2 – Página 44
![Page 47: Aula 3 – BD 1 Modelo Entidade Relacionamento – Parte 1elaine/disc/BD/Aula3BD-Modelo-Entidade... · O que os usuários querem do banco de dados? ... nro_min = 0, nro_max = 3 Baseado](https://reader030.fdocumentos.tips/reader030/viewer/2022020318/5bff647909d3f20e6b8ba602/html5/thumbnails/47.jpg)
Referências
• R. Elmasri e S. B. Navathe, Sistema de Banco de Dados, 6ª edição, Pearson, 2011.
• R. Ramakrishnan e J. Gehrke, Database Management Systems, 3a Edição, McGraw-Hill, 2003.