SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
BachareladoemSistemasdeInformação
BancodeDadosI
IvonePenqueMatsunoYugoshi
ivone.matsuno@ufms.br
Modelo Entidade-Relacionamento
2
Visãosimplificadade projetode BD
3
Visãosimplificadade projetode BD
4
Introdução
• O Modelo Entidade-Relacionamento (MER) é um modelo de dados de alto-nível
criado com o objetivo de representar a semântica associada aos dados do
minimundo.
• O MER é utilizado na fase de projeto conceitual, onde o esquema conceitual do banco
de dados da aplicação é concebido.
• Seus conceitos são intuitivos, permitindo que projetistas de banco de dado capturem
os conceitos associados aos dados da aplicação, sem a interferência da tecnologia
específica de implementação do banco de dados.
5
Introdução
• Em engenharia de software, é um modelo entidade relacionamento (MER) é
utilizado para descrever os dados ou aspectos de informação de um domínio de
negócio ou seus requisitos de processo, de uma maneira abstrata que, em última
análise, se presta a ser implementada em um banco de dados relacional.
6
Modelo Entidade-Relacionamento (MER)
• Define uma representação gráfica do projeto de BD
• define um problema do mini-mundo como um conjunto de entidades (E1, E2,..., En)
e de relacionamentos (R1, R2,..., Rk) entre estes.
• E os respectivos atributos da entidade ou do relacionamentos.
• Representação padrão para modelagem conceitual possui OS seguintes
componentes:
• Entidades
• Atributos
• Relacionamentos
• Restrições
7
MER
• Neste curso estudaremos a notação clássica proposta por Peter Chein.
• Existem outros diversos.
8
Entidade
• Objeto do problema modelado sobre o qual se deseja manter informações no BD
• Toda entidade é representada por um retângulo
• Exemplo:
• Armazenar quais pessoas estão trabalham em quais departamentos
PESSOA DEPARTAMENTO
9
Entidade
• Uma entidade E é um conjunto de instâncias e1, e2, ..., en.
• Exemplo: Pessoa = {p1, p2, p3, p4, p5, p6}, Carro = {c1, c2, c3, c4},
Departamento = {d1, d2, d3}
• p1
• p2
• p3
• p4
• p5
• p6
PESSOA
• d1
• d2
• d3
DEPARTAMENTO
• c1
• c2
• c3
• c4
CARRO
10
Atributo
• Dado que é associado a cada ocorrência de uma entidade ou de um relacionamento
ENGENHEIRO PROJETO
CREA Nome Codigo Titulo
11
Atributo–Chave
• Cada entidade deve possuir um atributo identificador (chave)
• O atributo que é chave é identificado é sublinhado
ENGENHEIRO PROJETO
CREA Nome Codigo Titulo
12
Atributo–Chave
• Cada entidade deve possuir um atributo identificador (chave)
• Em alguns casos, o identificador é formado pela junção de mais de um atributo
PRATELEIRA
NumCorredor
Capacidade
NumPrateleira
13
AtributoSimplese Composto
• Atributos simples x compostos
• Atributos simples são atômicos
• Atributos compostos por outros atributos.
• Exemplo:
FUNCIONARIO
Endereco
SIMPLES
14
AtributoSimplese Composto
• Atributo simples a informação é atômica
• Atributo composto possui atributos que
• Exemplo:
FUNCIONARIO
Endereco
FUNCIONARIO Estado
Cidade
Logradouro
Cep
SIMPLES
COMPOSTO
Endereco
15
AtributoMultivalorado
• Atributos de valor único x multivalorados
• em geral atributos tem apenas um valor associado
• Exemplo → idade
• em alguns casos os atributos podem ter mais de um valor (multivalorados)
• Exemplo → uma pessoa tem vários e-mail, as cores de uma roupa (a roupa é
branca e preta).
• Exemplo:
roupa
cores
PESSOA
e-mail
16
AtributoDerivado
• Atributos armazenados x derivados
• em alguns casos valores de atributos podem estar relacionados
• Exemplo → Idade e DataNascimento
• nesse exemplo o valor associado a “Idade” depende do valor atribuído a
“DataNascimento”
• Portanto: DataNascimento é atributo armazenado e Idade é derivado
• Exemplo:
PESSOA
Idade
DataNasc
17
Relacionamento
• Define associações entre as entidades
• Representado por um losango
• Este modelo expressa que o BD mantém informações sobre:
• um conjunto de objetos classificados como pessoas (entidade PESSOA)
• um conjunto de objetos classificados como departamentos (entidade DEPARTAMENTO)
• um conjunto de associações, que ligam um departamento a uma pessoa (relacionamento
TRABALHA)
PESSOA DEPARTAMENTO
TRABALHA
18
Instânciasde Relacionamentos
• O conjunto de relacionamentos R é um conjunto de elementos ri , em que cada
instância ri associa as instâncias ej , e cada instância ej pertence a um conjunto de
entidades (E1, E2, ..., Em).
• Exemplo:
• Suponha que Ri = {r1, r2, ..., rm}, E1 = P = {p1, p2, ..., pk} e
E2 = D = {d1, d2, ..., dn}
Podemos ter r1 = (p1, d2) e r2 = (p3, d2) por exemplo
• As entidades participantes em R indicam que estão de algum modo relacionadas na
situação do minimundo representado.
19
Instânciasde Relacionamentos
p1
●
p2
●
p3
●
p4
●
p5
●
p6
●
•d1
•d2
•d3
r1
●
r2
●
r3
●
r4
●
r5
●
r6
●
PESSOA DEPARTAMENTO
TRABALHA
20
Instânciasde Relacionamentos
p1
●
p2
●
p3
●
p4
●
p5
●
p6
●
•d1
•d2
•d3
r1
●
r2
●
r3
●
r4
●
r5
●
r6
●
PESSOA DEPARTAMENTO
TRABALHA
Ex: r5={p5, d3}
21
MER:Relacionamento
• Auto-Relacionamento
• Relacionamento entre ocorrências de uma mesma entidade
• Neste caso é necessário um “papel” para definir o relacionamento
• Exemplo:
PESSOA CASAMENTO
22
MER:Relacionamento
• Vamos praticar:
• Exercício 1:
• Alunos são matriculados em um curso
• Um curso tem disciplinas
• Disciplinas tem professores responsáveis
• Exercício 2:
• Em um conjunto de funcionários, alguns são supervisores e outros
supervisionados.
• Como fica o auto-relacionamento?
23
Restriçãode Cardinalidade
• Número máximo de instâncias de relacionamento nas quais uma entidade pode
participar
• Exemplo:
• Um funcionário só pode estar trabalhando em 1 departamento
• Um departamento pode ter vários funcionários.
EMPREGADO DEPARTAMENTO
TRABALHA
1
N
24
Restriçãode Cardinalidade
• Relacionamentos 1:N (um para muitos)
ALUNO CURSO
INSCRICAO
1
N
25
Restriçãode Cardinalidade
• Relacionamentos 1:N (um para muitos)
• Relacionamentos N:N (muitos para muitos)
ALUNO CURSO
INSCRICAO
1
N
MEDICO PACIENTE
CONSULTA
N
N
26
Restriçãode Cardinalidade
• Relacionamentos 1:N (um para muitos)
• Relacionamentos N:N (muitos para muitos)
• Relacionamentos 1:1 (um para um)
ALUNO CURSO
INSCRICAO
1
N
MEDICO PACIENTE
CONSULTA
N
N
EMPREGADO MESA
ALOCACAO
1
1
27
Restriçãode Participação
• A participação de um conjunto de entidades E em um conjunto de relacionamentos R
é dita total, se todas as entidades em E participam em pelo menos um
relacionamento em R. Caso contrário é parcial.
• Exemplo: todas as instâncias de “DEPARTAMENTO” DEVEM ser associada a uma
instância do relacionamento GERENCIA
• Enquanto que para as instâncias de “FUNCIONÁRIO” não é obrigatório ter a
participação no relacionamento GERENCIA
FUNCIONÁRIO DEPARTAMENTO
gerencia
1 1
28
EntidadesFracas
• Entidades são subdivididas em dois tipos: Fortes e Fracas
• Uma entidade Y é dita fraca quando a sua existência só faz sentido se existe uma
outra entidade forte X. Dizemos que
• Um relacionamento entre uma entidade fraca e sua proprietária é um
relacionamento de identificação, representado por um losango de linhas duplas.
• Portanto, A participação de um conjunto de entidades fracas deverá ter restrição de
participação total.
• Não tem chave primária da entidade fraca é sublinhada por uma linha dupla.
29
EntidadesFracas
• Exemplo Fortes e Fracas:
• Obs: Uma entidade fraca também pode ser representada por um atributo composto
ou multivalorado.
FUNCIONARIO DEPENDENTES
TEM
1 N
Nome
DataNasc
parentesco
matricula
30
Restriçãode ParticipaçãoeentidadeFraca
• Exemplo: todas as instâncias de “INVESTIMENTO” DEVEM ser associada a uma
instância do relacionamento TEM.
• Enquanto que as instâncias não é obrigatório ter a participação no relacionamento
TEM
CONTA INVESTIMENTO
TEM
1 N
31
Resumoda Notação
32
Ferramentas
• brModelo
(www.brmodeloweb.com)
• MySQL Workbench
(www.mysql.com/products/workbench/ )
• Draw.io
(www.draw.io)
• Lucidchart
(www.lucidchart.com)
• Bizagi
(www.bizagi.com/pt/plataforma/modeler)
• Pesquisem outras... Compartihem ☺
33
Exercícios
• Crie um diagrama usando o modelo entidade-relacionamento para os exercícios a
seguir.
34
Exercício1 -Empresa
• A empresa é organizada em departamentos. Cada departamento tem um nome exclusivo, um número
exclusivo e um empregado particular que o gerencia. Registramos a data inicial em que esse
empregado começou a gerenciar o departamento. Um departamento pode ter vários locais.
• Um departamento controla uma série de projetos, cada um deles com um nome e um número
exclusivo.
• Armazenamos o nome, CPF e o salário de cada empregado. Um empregado é designado a um
departamento, mas pode trabalhar em vários projetos, que não necessariamente são controlados
pelo mesmo departamento. Registramos o número atual de horas por semana que um empregado
trabalha em cada projeto. Também registramos o supervisor direto de cada empregado.
• Queremos registrar os dependentes de cada empregado para fins de seguro. Para cada dependente,
mantemos o nome, sexo, data de nascimento e parentesco com o empregado.
35
Exercício1 -Empresa
• A empresa é organizada em departamentos. Cada departamento tem um nome exclusivo, um número
exclusivo e um empregado particular que o gerencia. Registramos a data inicial em que esse
empregado começou a gerenciar o departamento. Um departamento pode ter vários locais.
• Um departamento controla uma série de projetos, cada um deles com um nome e um número
exclusivo.
• Armazenamos o nome, CPF e o salário de cada empregado. Um empregado é designado a um
departamento, mas pode trabalhar em vários projetos, que não necesariamente são controlados pelo
mesmo departamento. Registramos o número atual de horas por semana que um empregado trabalha
em cada projeto. Também registramos o supervisor direto de cada empregado.
• Queremos registrar os dependentes de cada empregado para fins de seguro. Para cada dependente,
mantemos o nome, sexo, data de nascimento e parentesco com o empregado.
36
Exercício1 -Empresa
• A empresa é organizada em departamentos. Cada departamento tem um nome exclusivo, um número
exclusivo e um empregado particular que o gerencia. Registramos a data inicial em que esse
empregado começou a gerenciar o departamento. Um departamento pode ter vários locais.
• Um departamento controla uma série de projetos, cada um deles com um nome e um número
exclusivo.
• Armazenamos o nome, CPF e o salário de cada empregado. Um empregado é designado a um
departamento, mas pode trabalhar em vários projetos, que não necesariamente são controlados pelo
mesmo departamento. Registramos o número atual de horas por semana que um empregado trabalha
em cada projeto. Também registramos o supervisor direto de cada empregado.
• Queremos registrar os dependentes de cada empregado para fins de seguro. Para cada dependente,
mantemos o nome, sexo, data de nascimento e parentesco com o empregado.
n
1
dt_inicio
38
Exercício2 -Biblioteca
• Uma biblioteca deseja cadastrar informações de seus livros, autores e editoras para realizar um
controle interno simples para compra e contato com editoras e autores. (Não é necessário controlar os
usuários da biblioteca e empréstimos e devolução de livros).
• Um livro possui ISBN, título, área, autores, edição, editora e ano de publicação.
• Todos os livros apresentam pelo menos um exemplar na biblioteca.
• O nome do autor é representado por três partes: primeiro, meio e último nome.
• De cada editora possui as seguintes informações: código, nome do representante, endereço completo
e telefone.
• Alguns autores possuem contrato para publicação com as editoras por um determinado tempo de
duração especificado em anos.

Mais conteúdo relacionado

Semelhante a bd_aula02-IPMY.pdf

Modelagem
ModelagemModelagem
Modelagemprsimon
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)Janynne Gomes
 
FICHA4_Esquema Relacional _BD_Novo-1.pdf
FICHA4_Esquema Relacional _BD_Novo-1.pdfFICHA4_Esquema Relacional _BD_Novo-1.pdf
FICHA4_Esquema Relacional _BD_Novo-1.pdfhelton56
 
Aula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdfAula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdfCelestino24
 
BANCO DE DADOS - Modelo conceitual - MER e DER.pdf
BANCO DE DADOS - Modelo conceitual - MER e DER.pdfBANCO DE DADOS - Modelo conceitual - MER e DER.pdf
BANCO DE DADOS - Modelo conceitual - MER e DER.pdfssusera5d99a
 
Aulas de banco de dados
Aulas de banco de dadosAulas de banco de dados
Aulas de banco de dadosOseas_Lima
 
02 2 - modelagem er
02   2 - modelagem er02   2 - modelagem er
02 2 - modelagem erElton Costa
 
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. RefBD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. RefRodrigo Kiyoshi Saito
 
Apostila bancodedados (2)
Apostila bancodedados (2)Apostila bancodedados (2)
Apostila bancodedados (2)Reuel Lopes
 
04 modelagem de dados introdução
04  modelagem de dados   introdução04  modelagem de dados   introdução
04 modelagem de dados introduçãoCentro Paula Souza
 
Bancode dados modelagem conceitual
Bancode dados modelagem conceitualBancode dados modelagem conceitual
Bancode dados modelagem conceitualMario Sergio
 
08 modelo conceitual_fisico_logico_er
08 modelo conceitual_fisico_logico_er08 modelo conceitual_fisico_logico_er
08 modelo conceitual_fisico_logico_erWalter Alves Pereira
 
Tema 6 modelo_dedados-dea-et
Tema 6 modelo_dedados-dea-etTema 6 modelo_dedados-dea-et
Tema 6 modelo_dedados-dea-etPedro A. Uamusse
 
3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento3 - Modelo Entidade Relacionamento
3 - Modelo Entidade RelacionamentoCris Fidelix
 
Mapeamento de Objetos para o Modelo Relacional.ppt
Mapeamento de Objetos para o Modelo Relacional.pptMapeamento de Objetos para o Modelo Relacional.ppt
Mapeamento de Objetos para o Modelo Relacional.pptJoberthSilva
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Vitor Hugo Melo Araújo
 

Semelhante a bd_aula02-IPMY.pdf (20)

Aula projetologico
Aula projetologicoAula projetologico
Aula projetologico
 
Modelagem
ModelagemModelagem
Modelagem
 
Bases De Dados
Bases De DadosBases De Dados
Bases De Dados
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
 
FICHA4_Esquema Relacional _BD_Novo-1.pdf
FICHA4_Esquema Relacional _BD_Novo-1.pdfFICHA4_Esquema Relacional _BD_Novo-1.pdf
FICHA4_Esquema Relacional _BD_Novo-1.pdf
 
Aula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdfAula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdf
 
BANCO DE DADOS - Modelo conceitual - MER e DER.pdf
BANCO DE DADOS - Modelo conceitual - MER e DER.pdfBANCO DE DADOS - Modelo conceitual - MER e DER.pdf
BANCO DE DADOS - Modelo conceitual - MER e DER.pdf
 
Aulas de banco de dados
Aulas de banco de dadosAulas de banco de dados
Aulas de banco de dados
 
02 2 - modelagem er
02   2 - modelagem er02   2 - modelagem er
02 2 - modelagem er
 
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. RefBD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
BD I - Aula 03 - Atributos, Tuplas, PK, FK, Relacionamento, Int. Ref
 
Modelo E-R
Modelo E-RModelo E-R
Modelo E-R
 
Apostila bancodedados (2)
Apostila bancodedados (2)Apostila bancodedados (2)
Apostila bancodedados (2)
 
04 modelagem de dados introdução
04  modelagem de dados   introdução04  modelagem de dados   introdução
04 modelagem de dados introdução
 
Bancode dados modelagem conceitual
Bancode dados modelagem conceitualBancode dados modelagem conceitual
Bancode dados modelagem conceitual
 
08 modelo conceitual_fisico_logico_er
08 modelo conceitual_fisico_logico_er08 modelo conceitual_fisico_logico_er
08 modelo conceitual_fisico_logico_er
 
Aula bd i 05 04-21
Aula bd i 05 04-21Aula bd i 05 04-21
Aula bd i 05 04-21
 
Tema 6 modelo_dedados-dea-et
Tema 6 modelo_dedados-dea-etTema 6 modelo_dedados-dea-et
Tema 6 modelo_dedados-dea-et
 
3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento
 
Mapeamento de Objetos para o Modelo Relacional.ppt
Mapeamento de Objetos para o Modelo Relacional.pptMapeamento de Objetos para o Modelo Relacional.ppt
Mapeamento de Objetos para o Modelo Relacional.ppt
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
 

bd_aula02-IPMY.pdf

  • 4. 4 Introdução • O Modelo Entidade-Relacionamento (MER) é um modelo de dados de alto-nível criado com o objetivo de representar a semântica associada aos dados do minimundo. • O MER é utilizado na fase de projeto conceitual, onde o esquema conceitual do banco de dados da aplicação é concebido. • Seus conceitos são intuitivos, permitindo que projetistas de banco de dado capturem os conceitos associados aos dados da aplicação, sem a interferência da tecnologia específica de implementação do banco de dados.
  • 5. 5 Introdução • Em engenharia de software, é um modelo entidade relacionamento (MER) é utilizado para descrever os dados ou aspectos de informação de um domínio de negócio ou seus requisitos de processo, de uma maneira abstrata que, em última análise, se presta a ser implementada em um banco de dados relacional.
  • 6. 6 Modelo Entidade-Relacionamento (MER) • Define uma representação gráfica do projeto de BD • define um problema do mini-mundo como um conjunto de entidades (E1, E2,..., En) e de relacionamentos (R1, R2,..., Rk) entre estes. • E os respectivos atributos da entidade ou do relacionamentos. • Representação padrão para modelagem conceitual possui OS seguintes componentes: • Entidades • Atributos • Relacionamentos • Restrições
  • 7. 7 MER • Neste curso estudaremos a notação clássica proposta por Peter Chein. • Existem outros diversos.
  • 8. 8 Entidade • Objeto do problema modelado sobre o qual se deseja manter informações no BD • Toda entidade é representada por um retângulo • Exemplo: • Armazenar quais pessoas estão trabalham em quais departamentos PESSOA DEPARTAMENTO
  • 9. 9 Entidade • Uma entidade E é um conjunto de instâncias e1, e2, ..., en. • Exemplo: Pessoa = {p1, p2, p3, p4, p5, p6}, Carro = {c1, c2, c3, c4}, Departamento = {d1, d2, d3} • p1 • p2 • p3 • p4 • p5 • p6 PESSOA • d1 • d2 • d3 DEPARTAMENTO • c1 • c2 • c3 • c4 CARRO
  • 10. 10 Atributo • Dado que é associado a cada ocorrência de uma entidade ou de um relacionamento ENGENHEIRO PROJETO CREA Nome Codigo Titulo
  • 11. 11 Atributo–Chave • Cada entidade deve possuir um atributo identificador (chave) • O atributo que é chave é identificado é sublinhado ENGENHEIRO PROJETO CREA Nome Codigo Titulo
  • 12. 12 Atributo–Chave • Cada entidade deve possuir um atributo identificador (chave) • Em alguns casos, o identificador é formado pela junção de mais de um atributo PRATELEIRA NumCorredor Capacidade NumPrateleira
  • 13. 13 AtributoSimplese Composto • Atributos simples x compostos • Atributos simples são atômicos • Atributos compostos por outros atributos. • Exemplo: FUNCIONARIO Endereco SIMPLES
  • 14. 14 AtributoSimplese Composto • Atributo simples a informação é atômica • Atributo composto possui atributos que • Exemplo: FUNCIONARIO Endereco FUNCIONARIO Estado Cidade Logradouro Cep SIMPLES COMPOSTO Endereco
  • 15. 15 AtributoMultivalorado • Atributos de valor único x multivalorados • em geral atributos tem apenas um valor associado • Exemplo → idade • em alguns casos os atributos podem ter mais de um valor (multivalorados) • Exemplo → uma pessoa tem vários e-mail, as cores de uma roupa (a roupa é branca e preta). • Exemplo: roupa cores PESSOA e-mail
  • 16. 16 AtributoDerivado • Atributos armazenados x derivados • em alguns casos valores de atributos podem estar relacionados • Exemplo → Idade e DataNascimento • nesse exemplo o valor associado a “Idade” depende do valor atribuído a “DataNascimento” • Portanto: DataNascimento é atributo armazenado e Idade é derivado • Exemplo: PESSOA Idade DataNasc
  • 17. 17 Relacionamento • Define associações entre as entidades • Representado por um losango • Este modelo expressa que o BD mantém informações sobre: • um conjunto de objetos classificados como pessoas (entidade PESSOA) • um conjunto de objetos classificados como departamentos (entidade DEPARTAMENTO) • um conjunto de associações, que ligam um departamento a uma pessoa (relacionamento TRABALHA) PESSOA DEPARTAMENTO TRABALHA
  • 18. 18 Instânciasde Relacionamentos • O conjunto de relacionamentos R é um conjunto de elementos ri , em que cada instância ri associa as instâncias ej , e cada instância ej pertence a um conjunto de entidades (E1, E2, ..., Em). • Exemplo: • Suponha que Ri = {r1, r2, ..., rm}, E1 = P = {p1, p2, ..., pk} e E2 = D = {d1, d2, ..., dn} Podemos ter r1 = (p1, d2) e r2 = (p3, d2) por exemplo • As entidades participantes em R indicam que estão de algum modo relacionadas na situação do minimundo representado.
  • 21. 21 MER:Relacionamento • Auto-Relacionamento • Relacionamento entre ocorrências de uma mesma entidade • Neste caso é necessário um “papel” para definir o relacionamento • Exemplo: PESSOA CASAMENTO
  • 22. 22 MER:Relacionamento • Vamos praticar: • Exercício 1: • Alunos são matriculados em um curso • Um curso tem disciplinas • Disciplinas tem professores responsáveis • Exercício 2: • Em um conjunto de funcionários, alguns são supervisores e outros supervisionados. • Como fica o auto-relacionamento?
  • 23. 23 Restriçãode Cardinalidade • Número máximo de instâncias de relacionamento nas quais uma entidade pode participar • Exemplo: • Um funcionário só pode estar trabalhando em 1 departamento • Um departamento pode ter vários funcionários. EMPREGADO DEPARTAMENTO TRABALHA 1 N
  • 24. 24 Restriçãode Cardinalidade • Relacionamentos 1:N (um para muitos) ALUNO CURSO INSCRICAO 1 N
  • 25. 25 Restriçãode Cardinalidade • Relacionamentos 1:N (um para muitos) • Relacionamentos N:N (muitos para muitos) ALUNO CURSO INSCRICAO 1 N MEDICO PACIENTE CONSULTA N N
  • 26. 26 Restriçãode Cardinalidade • Relacionamentos 1:N (um para muitos) • Relacionamentos N:N (muitos para muitos) • Relacionamentos 1:1 (um para um) ALUNO CURSO INSCRICAO 1 N MEDICO PACIENTE CONSULTA N N EMPREGADO MESA ALOCACAO 1 1
  • 27. 27 Restriçãode Participação • A participação de um conjunto de entidades E em um conjunto de relacionamentos R é dita total, se todas as entidades em E participam em pelo menos um relacionamento em R. Caso contrário é parcial. • Exemplo: todas as instâncias de “DEPARTAMENTO” DEVEM ser associada a uma instância do relacionamento GERENCIA • Enquanto que para as instâncias de “FUNCIONÁRIO” não é obrigatório ter a participação no relacionamento GERENCIA FUNCIONÁRIO DEPARTAMENTO gerencia 1 1
  • 28. 28 EntidadesFracas • Entidades são subdivididas em dois tipos: Fortes e Fracas • Uma entidade Y é dita fraca quando a sua existência só faz sentido se existe uma outra entidade forte X. Dizemos que • Um relacionamento entre uma entidade fraca e sua proprietária é um relacionamento de identificação, representado por um losango de linhas duplas. • Portanto, A participação de um conjunto de entidades fracas deverá ter restrição de participação total. • Não tem chave primária da entidade fraca é sublinhada por uma linha dupla.
  • 29. 29 EntidadesFracas • Exemplo Fortes e Fracas: • Obs: Uma entidade fraca também pode ser representada por um atributo composto ou multivalorado. FUNCIONARIO DEPENDENTES TEM 1 N Nome DataNasc parentesco matricula
  • 30. 30 Restriçãode ParticipaçãoeentidadeFraca • Exemplo: todas as instâncias de “INVESTIMENTO” DEVEM ser associada a uma instância do relacionamento TEM. • Enquanto que as instâncias não é obrigatório ter a participação no relacionamento TEM CONTA INVESTIMENTO TEM 1 N
  • 32. 32 Ferramentas • brModelo (www.brmodeloweb.com) • MySQL Workbench (www.mysql.com/products/workbench/ ) • Draw.io (www.draw.io) • Lucidchart (www.lucidchart.com) • Bizagi (www.bizagi.com/pt/plataforma/modeler) • Pesquisem outras... Compartihem ☺
  • 33. 33 Exercícios • Crie um diagrama usando o modelo entidade-relacionamento para os exercícios a seguir.
  • 34. 34 Exercício1 -Empresa • A empresa é organizada em departamentos. Cada departamento tem um nome exclusivo, um número exclusivo e um empregado particular que o gerencia. Registramos a data inicial em que esse empregado começou a gerenciar o departamento. Um departamento pode ter vários locais. • Um departamento controla uma série de projetos, cada um deles com um nome e um número exclusivo. • Armazenamos o nome, CPF e o salário de cada empregado. Um empregado é designado a um departamento, mas pode trabalhar em vários projetos, que não necessariamente são controlados pelo mesmo departamento. Registramos o número atual de horas por semana que um empregado trabalha em cada projeto. Também registramos o supervisor direto de cada empregado. • Queremos registrar os dependentes de cada empregado para fins de seguro. Para cada dependente, mantemos o nome, sexo, data de nascimento e parentesco com o empregado.
  • 35. 35 Exercício1 -Empresa • A empresa é organizada em departamentos. Cada departamento tem um nome exclusivo, um número exclusivo e um empregado particular que o gerencia. Registramos a data inicial em que esse empregado começou a gerenciar o departamento. Um departamento pode ter vários locais. • Um departamento controla uma série de projetos, cada um deles com um nome e um número exclusivo. • Armazenamos o nome, CPF e o salário de cada empregado. Um empregado é designado a um departamento, mas pode trabalhar em vários projetos, que não necesariamente são controlados pelo mesmo departamento. Registramos o número atual de horas por semana que um empregado trabalha em cada projeto. Também registramos o supervisor direto de cada empregado. • Queremos registrar os dependentes de cada empregado para fins de seguro. Para cada dependente, mantemos o nome, sexo, data de nascimento e parentesco com o empregado.
  • 36. 36 Exercício1 -Empresa • A empresa é organizada em departamentos. Cada departamento tem um nome exclusivo, um número exclusivo e um empregado particular que o gerencia. Registramos a data inicial em que esse empregado começou a gerenciar o departamento. Um departamento pode ter vários locais. • Um departamento controla uma série de projetos, cada um deles com um nome e um número exclusivo. • Armazenamos o nome, CPF e o salário de cada empregado. Um empregado é designado a um departamento, mas pode trabalhar em vários projetos, que não necesariamente são controlados pelo mesmo departamento. Registramos o número atual de horas por semana que um empregado trabalha em cada projeto. Também registramos o supervisor direto de cada empregado. • Queremos registrar os dependentes de cada empregado para fins de seguro. Para cada dependente, mantemos o nome, sexo, data de nascimento e parentesco com o empregado.
  • 38. 38 Exercício2 -Biblioteca • Uma biblioteca deseja cadastrar informações de seus livros, autores e editoras para realizar um controle interno simples para compra e contato com editoras e autores. (Não é necessário controlar os usuários da biblioteca e empréstimos e devolução de livros). • Um livro possui ISBN, título, área, autores, edição, editora e ano de publicação. • Todos os livros apresentam pelo menos um exemplar na biblioteca. • O nome do autor é representado por três partes: primeiro, meio e último nome. • De cada editora possui as seguintes informações: código, nome do representante, endereço completo e telefone. • Alguns autores possuem contrato para publicação com as editoras por um determinado tempo de duração especificado em anos.