SlideShare uma empresa Scribd logo
Banco de Dados I
Projeto de Banco de Dados e o
Modelo E-R – Parte 2
Fabricio Breve
Aspectos de projeto de entidade-
relacionamento
• As noções de um conjunto de entidades e
um conjunto de relacionamento não são
precisas, e é possível definir um conjunto
de entidades e os relacionamentos entre
eles de diversas maneiras
Uso de conjunto de entidades
versus atributos
• Considere o conjunto:
– Id_funcionario, nome_funcionario,
numero_telefone
• numero_telefone pode ser uma entidade com seus
próprios atributos: numero_telefone e local
(escritório, casa, etc...)
• Tratar telefone como entidade modela melhor uma
situação em que se pode querer manter
informações extras sobre o telefone
– local, tipo, pessoas que o compartilham
Uso de conjunto de entidades
versus atributos
• O que constitui um atributo?
• O que constitui um conjunto de entidades?
– Depende!
• Qual a estrutura da empresa real?
• Qual o significado associado?
Uso de conjunto de entidades versus
conjunto de relacionamentos
• Nem sempre é claro se um objeto é mais bem
expresso por um conjunto de entidades ou por
um conjunto de relacionamento
– Em nosso exemplo do banco, o empréstimo poderia
ser uma relação entre cliente e agência
• É satisfatório se um cliente puder fazer apenas um
empréstimo por agência e um empréstimo pertencer a
apenas um cliente
• Caso contrário, é problemático
Conjunto de relacionamentos binários
versus enários
• Alguns relacionamentos ternários são
melhor representados por dois
relacionamentos binários
– Exemplo: relacionamento ternário pais,
relacionando um filho aos seus pais
Convertendo relacionamentos não
binários para a forma binária
n Em geral, qualquer relacionamento não binário pode ser representado usando
relacionamentos binários criando um conjunto de entidades artificial.
l Substitua R entre os conjuntos de entidades A, B e C por um conjunto de
entidades E três conjuntos de relacionamento:
1. RA, relacionando E e A
2. RB, relacionando E e B
3. RC, relacionando E e C
l Crie um atributo identificador especial para E
l Inclua quaisquer atributos de R em E
l Para cada relacionamento (ai , bi , ci) em R,
1. crie uma nova entidade ei no conjunto de entidades E
2. inclua (ei , ai ) em RA
3. inclua (ei , bi ) em RB
4. inclua (ei , ci ) em RC
Cardinalidades de mapeamento afetam
o projeto ER
n Podemos tornar a data de acesso um atributo de conta, em vez de um
atributo de relacionamento, se cada conta puder ter apenas um cliente
l Ou seja, o relacionamento de conta para cliente é muitos-para-um ou,
equivalentemente, cliente para conta é um-para-muitos
Conjunto de Entidades Fracos
• É um conjunto de entidades que não tem atributos suficientes para
formar uma chave primária
• A existência de um conjunto de entidades fraco depende da
existência de um conjunto de entidades identificador (ou
proprietário)
– Ele precisa se relacionar com o conjunto de entidades identificador
através de um conjunto de relacionamento um-para-muitos total, do
identificador para o conjunto de entidades fraco
– Relacionamento identificador descrito usando um losango duplo
• O discriminador (ou chave parcial) de um conjunto de entidades
fraco é o conjunto de atributos que distingue entre todas as
entidades de um conjunto de entidades fraco.
• A chave primária de um conjunto de entidades fraco é formada pela
chave primária do conjunto de entidades forte em que o conjunto de
entidades fraco é dependente de existência, mais o discriminador
do conjunto de entidades fraco.
Conjuntos de Entidades Fracos
n Representamos um conjunto de entidades fraco por retângulos duplos.
n Sublinhamos o discriminador de um conjunto de entidades fraco com
uma linha tracejada.
n número_pagamento — discriminador do conjunto de entidades
pagamento.
n Chave primária para pagamento — (número_empréstimo,
número_pagamento)
Conjuntos de Entidades Fracos
n Nota: A chave primária do conjunto de entidades forte não é
explicitamente armazenada com o conjunto de entidades fraco, já
que ela está implícita no relacionamento identificador.
n Se número_empréstimo fosse explicitamente armazenado,
pagamento poderia se tornar uma entidade forte, mas, então, o
relacionamento entre pagamento e empréstimo seria duplicado
por um relacionamento implícito definido pelo atributo
número_empréstimo comum a pagamento e empréstimo.
Especialização
• Processo de projeto de cima para baixo: Designamos
subagrupamentos dentro de um conjunto de entidades que são
distintivos de outras entidades no conjunto.
• Esses subagrupamentos se tornam conjuntos de entidades de
nível inferior que possuem atributos ou participam em
relacionamentos que não se aplicam ao conjunto de entidades
de nível superior.
• Representada por um componente triângulo rotulado ISA (por
exemplo, cliente “é uma” pessoa).
• Herança de atributo — Um conjunto de entidades de nível
inferior herda todos os atributos e a participação de
relacionamento do conjunto de entidades de nível superior ao
qual está vinculado.
Exemplo de Especialização
Generalização
• Combina vários conjuntos de entidades que
compartilham os mesmos recursos em um
conjunto de entidades de nível superior.
• A especialização e a generalização são simples
inversões uma da outra; são representadas em
um diagrama ER da mesma maneira.
• Os termos especialização e generalização são
usados indistintamente.
Restrições em generalizações
• Restrição sobre que entidades podem ser membros de um
determinado conjunto de entidades de nível inferior
– Definido por condição
• Exemplo: Todos os clientes com mais de 65 anos são membros do conjunto
de entidades cidadão_senior; cidadão_senior ISA pessoa.
– Definido pelo usuário
• Restrição sobre se ou não as entidades podem pertencer a mais de
um conjunto de entidades de nível inferior dentro de uma única
generalização.
– Disjuntos
• uma entidade pode pertencer a não mais que um conjunto de entidades de
nível inferior
• Indicados no diagrama ER pela inscrição de disjunto ao lado do triângulo
ISA
– Superpostos
• um conjunto de entidades pode pertencer a mais de um conjunto de
entidades de nível inferior
Restrições em generalizações
• Restrição de integralidade — Especifica
se ou não uma entidade no conjunto de
entidades de nível superior precisa
pertencer a pelo menos um dos conjuntos
de entidades de nível inferior dentro de
uma generalização
– total: Uma entidade precisa pertencer a um
conjunto de entidades de nível inferior
– parcial: Uma entidade não precisa pertencer
a um conjunto de entidades de nível inferior
Agregação
• Considere o relacionamento ternário trabalha_em, que
vimos anteriormente
• Suponha que queremos registrar gerentes para tarefas
realizadas por um funcionário em uma agência
Agregação
• Os conjuntos de relacionamento trabalha_em e gerencia
representam informações superpostas
– Cada relacionamento gerencia corresponde a um relacionamento
trabalha_em
– Entretanto, alguns relacionamentos trabalha_em podem não
corresponder a nenhum relacionamentos gerencia
• Portanto, não podemos descartar o relacionamento trabalha_em
• Elimine essa redundância através da agregação
– Trate relacionamento como uma entidade abstrata
– Permite relacionamentos entre relacionamentos
– Abstração de relacionamento em nova entidade
• Sem introduzir redundância, o diagrama a seguir representa:
– Um funcionário trabalha em um cargo específico em uma agência
específica
– Um funcionário, agência ou combinação de cargos pode ter um gerente
associado
Agregação
Exemplo de
diagrama ER para
uma instituição
bancária
Resumo dos símbolos usados na
notação ER (Silberschatz)
Resumo dos símbolos (cont.)
Notações ER alternativas
Notação BRModelo
muitos-para-muitos
um-para-um
muitos-para-um
* Indicação de Cardinalidade mínima e máxima
Referências Bibliográficas
• SILBERSCHATZ, Abraham; KORTH,
Henry F.; SUDARSHAN, S. Sistema de
Banco de Dados. 5ª Ed. Campus, 2006
• PONTI JR, Moacir. Banco de Dados:
Introdução - Notas de Aula. 2006.

Mais conteúdo relacionado

Semelhante a Bd aula3

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
Celestino24
 
Modelagem
ModelagemModelagem
Modelagem
prsimon
 
bd_aula02-IPMY.pdf
bd_aula02-IPMY.pdfbd_aula02-IPMY.pdf
bd_aula02-IPMY.pdf
ssuser69006f
 
Bd 02 mer
Bd 02 merBd 02 mer
Modelagem de dados usando o mer parte 3
Modelagem de dados usando o mer parte 3Modelagem de dados usando o mer parte 3
Modelagem de dados usando o mer parte 3
Elaine Cecília Gatto
 
Aula bd i 05 04-21
Aula bd i 05 04-21Aula bd i 05 04-21
Aula bd i 05 04-21
Nilson Augustini
 
Modelo Conceitual - Banco de Dados
Modelo Conceitual - Banco de DadosModelo Conceitual - Banco de Dados
Modelo Conceitual - Banco de Dados
info_cimol
 
Aula 1 - 31 Jan 23.pdf
Aula 1 - 31 Jan 23.pdfAula 1 - 31 Jan 23.pdf
Aula 1 - 31 Jan 23.pdf
edilson42986
 
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
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
Fabio Abel
 
ATRIBUTOS.pptx
ATRIBUTOS.pptxATRIBUTOS.pptx
ATRIBUTOS.pptx
fabio20718
 
Modelo de Entidades e Relacionamentos
Modelo de Entidades e RelacionamentosModelo de Entidades e Relacionamentos
Modelo de Entidades e Relacionamentos
Robson Silva Espig
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)
Ricardo Terra
 
Aula 03 generalização e especialização
Aula 03   generalização e especializaçãoAula 03   generalização e especialização
Aula 03 generalização e especialização
Roitier Gonçalves
 
Modelo entidade relacionamento
Modelo entidade relacionamentoModelo entidade relacionamento
Modelo entidade relacionamento
Carlos Melo
 
3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento
Cris Fidelix
 
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
Rodrigo Kiyoshi Saito
 
Introducao Base Dados Ii
Introducao Base Dados IiIntroducao Base Dados Ii
Introducao Base Dados Ii
guest3118b2
 
Introducao Base Dados Ii
Introducao Base Dados IiIntroducao Base Dados Ii
Introducao Base Dados Ii
guest3118b2
 
Aula 02 mer
Aula 02   merAula 02   mer
Aula 02 mer
Roitier Gonçalves
 

Semelhante a Bd aula3 (20)

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
 
Modelagem
ModelagemModelagem
Modelagem
 
bd_aula02-IPMY.pdf
bd_aula02-IPMY.pdfbd_aula02-IPMY.pdf
bd_aula02-IPMY.pdf
 
Bd 02 mer
Bd 02 merBd 02 mer
Bd 02 mer
 
Modelagem de dados usando o mer parte 3
Modelagem de dados usando o mer parte 3Modelagem de dados usando o mer parte 3
Modelagem de dados usando o mer parte 3
 
Aula bd i 05 04-21
Aula bd i 05 04-21Aula bd i 05 04-21
Aula bd i 05 04-21
 
Modelo Conceitual - Banco de Dados
Modelo Conceitual - Banco de DadosModelo Conceitual - Banco de Dados
Modelo Conceitual - Banco de Dados
 
Aula 1 - 31 Jan 23.pdf
Aula 1 - 31 Jan 23.pdfAula 1 - 31 Jan 23.pdf
Aula 1 - 31 Jan 23.pdf
 
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
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
 
ATRIBUTOS.pptx
ATRIBUTOS.pptxATRIBUTOS.pptx
ATRIBUTOS.pptx
 
Modelo de Entidades e Relacionamentos
Modelo de Entidades e RelacionamentosModelo de Entidades e Relacionamentos
Modelo de Entidades e Relacionamentos
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)
 
Aula 03 generalização e especialização
Aula 03   generalização e especializaçãoAula 03   generalização e especialização
Aula 03 generalização e especialização
 
Modelo entidade relacionamento
Modelo entidade relacionamentoModelo entidade relacionamento
Modelo entidade relacionamento
 
3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento
 
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
 
Introducao Base Dados Ii
Introducao Base Dados IiIntroducao Base Dados Ii
Introducao Base Dados Ii
 
Introducao Base Dados Ii
Introducao Base Dados IiIntroducao Base Dados Ii
Introducao Base Dados Ii
 
Aula 02 mer
Aula 02   merAula 02   mer
Aula 02 mer
 

Mais de Tecksantos

Aula1
Aula1Aula1
Aula1
Tecksantos
 
Sql02
Sql02Sql02
Sql02
Tecksantos
 
Sql01
Sql01Sql01
Sql01
Tecksantos
 
Curso de banco de dados
Curso de banco de dadosCurso de banco de dados
Curso de banco de dados
Tecksantos
 
Bd aula5
Bd aula5Bd aula5
Bd aula5
Tecksantos
 
Bd aula4
Bd aula4Bd aula4
Bd aula4
Tecksantos
 

Mais de Tecksantos (6)

Aula1
Aula1Aula1
Aula1
 
Sql02
Sql02Sql02
Sql02
 
Sql01
Sql01Sql01
Sql01
 
Curso de banco de dados
Curso de banco de dadosCurso de banco de dados
Curso de banco de dados
 
Bd aula5
Bd aula5Bd aula5
Bd aula5
 
Bd aula4
Bd aula4Bd aula4
Bd aula4
 

Último

Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 

Último (6)

Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 

Bd aula3

  • 1. Banco de Dados I Projeto de Banco de Dados e o Modelo E-R – Parte 2 Fabricio Breve
  • 2. Aspectos de projeto de entidade- relacionamento • As noções de um conjunto de entidades e um conjunto de relacionamento não são precisas, e é possível definir um conjunto de entidades e os relacionamentos entre eles de diversas maneiras
  • 3. Uso de conjunto de entidades versus atributos • Considere o conjunto: – Id_funcionario, nome_funcionario, numero_telefone • numero_telefone pode ser uma entidade com seus próprios atributos: numero_telefone e local (escritório, casa, etc...) • Tratar telefone como entidade modela melhor uma situação em que se pode querer manter informações extras sobre o telefone – local, tipo, pessoas que o compartilham
  • 4. Uso de conjunto de entidades versus atributos • O que constitui um atributo? • O que constitui um conjunto de entidades? – Depende! • Qual a estrutura da empresa real? • Qual o significado associado?
  • 5. Uso de conjunto de entidades versus conjunto de relacionamentos • Nem sempre é claro se um objeto é mais bem expresso por um conjunto de entidades ou por um conjunto de relacionamento – Em nosso exemplo do banco, o empréstimo poderia ser uma relação entre cliente e agência • É satisfatório se um cliente puder fazer apenas um empréstimo por agência e um empréstimo pertencer a apenas um cliente • Caso contrário, é problemático
  • 6. Conjunto de relacionamentos binários versus enários • Alguns relacionamentos ternários são melhor representados por dois relacionamentos binários – Exemplo: relacionamento ternário pais, relacionando um filho aos seus pais
  • 7. Convertendo relacionamentos não binários para a forma binária n Em geral, qualquer relacionamento não binário pode ser representado usando relacionamentos binários criando um conjunto de entidades artificial. l Substitua R entre os conjuntos de entidades A, B e C por um conjunto de entidades E três conjuntos de relacionamento: 1. RA, relacionando E e A 2. RB, relacionando E e B 3. RC, relacionando E e C l Crie um atributo identificador especial para E l Inclua quaisquer atributos de R em E l Para cada relacionamento (ai , bi , ci) em R, 1. crie uma nova entidade ei no conjunto de entidades E 2. inclua (ei , ai ) em RA 3. inclua (ei , bi ) em RB 4. inclua (ei , ci ) em RC
  • 8. Cardinalidades de mapeamento afetam o projeto ER n Podemos tornar a data de acesso um atributo de conta, em vez de um atributo de relacionamento, se cada conta puder ter apenas um cliente l Ou seja, o relacionamento de conta para cliente é muitos-para-um ou, equivalentemente, cliente para conta é um-para-muitos
  • 9. Conjunto de Entidades Fracos • É um conjunto de entidades que não tem atributos suficientes para formar uma chave primária • A existência de um conjunto de entidades fraco depende da existência de um conjunto de entidades identificador (ou proprietário) – Ele precisa se relacionar com o conjunto de entidades identificador através de um conjunto de relacionamento um-para-muitos total, do identificador para o conjunto de entidades fraco – Relacionamento identificador descrito usando um losango duplo • O discriminador (ou chave parcial) de um conjunto de entidades fraco é o conjunto de atributos que distingue entre todas as entidades de um conjunto de entidades fraco. • A chave primária de um conjunto de entidades fraco é formada pela chave primária do conjunto de entidades forte em que o conjunto de entidades fraco é dependente de existência, mais o discriminador do conjunto de entidades fraco.
  • 10. Conjuntos de Entidades Fracos n Representamos um conjunto de entidades fraco por retângulos duplos. n Sublinhamos o discriminador de um conjunto de entidades fraco com uma linha tracejada. n número_pagamento — discriminador do conjunto de entidades pagamento. n Chave primária para pagamento — (número_empréstimo, número_pagamento)
  • 11. Conjuntos de Entidades Fracos n Nota: A chave primária do conjunto de entidades forte não é explicitamente armazenada com o conjunto de entidades fraco, já que ela está implícita no relacionamento identificador. n Se número_empréstimo fosse explicitamente armazenado, pagamento poderia se tornar uma entidade forte, mas, então, o relacionamento entre pagamento e empréstimo seria duplicado por um relacionamento implícito definido pelo atributo número_empréstimo comum a pagamento e empréstimo.
  • 12. Especialização • Processo de projeto de cima para baixo: Designamos subagrupamentos dentro de um conjunto de entidades que são distintivos de outras entidades no conjunto. • Esses subagrupamentos se tornam conjuntos de entidades de nível inferior que possuem atributos ou participam em relacionamentos que não se aplicam ao conjunto de entidades de nível superior. • Representada por um componente triângulo rotulado ISA (por exemplo, cliente “é uma” pessoa). • Herança de atributo — Um conjunto de entidades de nível inferior herda todos os atributos e a participação de relacionamento do conjunto de entidades de nível superior ao qual está vinculado.
  • 14. Generalização • Combina vários conjuntos de entidades que compartilham os mesmos recursos em um conjunto de entidades de nível superior. • A especialização e a generalização são simples inversões uma da outra; são representadas em um diagrama ER da mesma maneira. • Os termos especialização e generalização são usados indistintamente.
  • 15. Restrições em generalizações • Restrição sobre que entidades podem ser membros de um determinado conjunto de entidades de nível inferior – Definido por condição • Exemplo: Todos os clientes com mais de 65 anos são membros do conjunto de entidades cidadão_senior; cidadão_senior ISA pessoa. – Definido pelo usuário • Restrição sobre se ou não as entidades podem pertencer a mais de um conjunto de entidades de nível inferior dentro de uma única generalização. – Disjuntos • uma entidade pode pertencer a não mais que um conjunto de entidades de nível inferior • Indicados no diagrama ER pela inscrição de disjunto ao lado do triângulo ISA – Superpostos • um conjunto de entidades pode pertencer a mais de um conjunto de entidades de nível inferior
  • 16. Restrições em generalizações • Restrição de integralidade — Especifica se ou não uma entidade no conjunto de entidades de nível superior precisa pertencer a pelo menos um dos conjuntos de entidades de nível inferior dentro de uma generalização – total: Uma entidade precisa pertencer a um conjunto de entidades de nível inferior – parcial: Uma entidade não precisa pertencer a um conjunto de entidades de nível inferior
  • 17. Agregação • Considere o relacionamento ternário trabalha_em, que vimos anteriormente • Suponha que queremos registrar gerentes para tarefas realizadas por um funcionário em uma agência
  • 18. Agregação • Os conjuntos de relacionamento trabalha_em e gerencia representam informações superpostas – Cada relacionamento gerencia corresponde a um relacionamento trabalha_em – Entretanto, alguns relacionamentos trabalha_em podem não corresponder a nenhum relacionamentos gerencia • Portanto, não podemos descartar o relacionamento trabalha_em • Elimine essa redundância através da agregação – Trate relacionamento como uma entidade abstrata – Permite relacionamentos entre relacionamentos – Abstração de relacionamento em nova entidade • Sem introduzir redundância, o diagrama a seguir representa: – Um funcionário trabalha em um cargo específico em uma agência específica – Um funcionário, agência ou combinação de cargos pode ter um gerente associado
  • 20. Exemplo de diagrama ER para uma instituição bancária
  • 21. Resumo dos símbolos usados na notação ER (Silberschatz)
  • 25. Referências Bibliográficas • SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistema de Banco de Dados. 5ª Ed. Campus, 2006 • PONTI JR, Moacir. Banco de Dados: Introdução - Notas de Aula. 2006.