Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização...
Transcript of Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização...
![Page 1: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/1.jpg)
UFPr Departamento de Informática 1
Modelo Entidade Relacionamento
Conceitos básicos e diagramas ER
![Page 2: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/2.jpg)
UFPr Departamento de Informática 2
Modelo Entidade Relacionamento
Conceitos Básicos
• O modelo Entidade-Relacionamento (ER, ou também chamado Entidade Associação) é usado na maioria dos métodos e ferramentas de auxílio à concepção de BD's (MERISE, IDA, Yourdon,ERWin)
![Page 3: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/3.jpg)
UFPr Departamento de Informática 3
Modelo Entidade Relacionamento
Conceitos Básicos
• A idéia fundamental deste modelo é a de conservar como conceitos de base os conceitos genéricos (objetos, associação, propriedade) usados no processo de abstração que vai da observação de uma realidade à sua descrição.
![Page 4: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/4.jpg)
UFPr Departamento de Informática 4
Modelo Entidade Relacionamento
Conceitos básicos
• Entidade Objetos• Associação Ligação entre os objetos• atributo Propriedade dos objetos.
![Page 5: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/5.jpg)
UFPr Departamento de Informática 5
Modelo Entidade Relacionamento
Entidades
• Um entidade é o objeto do mundo real (concreto ou abstrato) que nós queremos representar no computador e que tem uma existência própria. Uma entidade existe independentemente do fato que ela está ligada à outros objetos do BD. Exemplos: João da Silva, Aparelho de Barbear FYX, Contrato 3201, ...
![Page 6: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/6.jpg)
UFPr Departamento de Informática 6
Modelo Entidade Relacionamento
Tipo de entidade
• Um Tipo de Entidade (TE) é a representação de uma classe de entidades similares e com as mesmas características. Exemplos: Trabalhadores, Artigos, Contratos, Estudantes,....
![Page 7: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/7.jpg)
UFPr Departamento de Informática 7
Modelo Entidade Relacionamento
Associação (relacionamento)
• Uma associação liga várias entidades onde cada uma delas ocupa um "papel". Se a associação liga dois (ou mais) entidades de um mesmo tipo ela é dita cíclica e neste caso a especificação do papel de cada entidade torna-se indispensável. Ex: João da Silva trabalha Esso, Philips fabrica Aparelho de Barbear FYC, ....
![Page 8: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/8.jpg)
UFPr Departamento de Informática 8
Modelo Entidade Relacionamento
Tipo de Associação
• Um tipo de Associação (TA) é a representação de um conjunto de associações similares que possuem as mesmas características. Exemplos: fabrica liga uma Empresa à um Produto, trabalha liga Trabalhadores à Empresa,...
![Page 9: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/9.jpg)
UFPr Departamento de Informática 9
Modelo Entidade Relacionamento
Atributo
• Um atributo é a propriedade associada à um TE, ou à um TA. Exemplos: nome, salário, endereço (para o TE Trabalhadores); nome, nota para o TE Estudantes, ....
![Page 10: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/10.jpg)
UFPr Departamento de Informática 10
Modelo Entidade Relacionamento
Ocorrência ou Instância e População
• Uma ocorrência ou instância de um TE (ou TA) é a representação no BD de um entidade (ou associação) que pertence à classe descrita pelo TE (TA).
• População de um TE (TA) é o conjunto das ocorrências.
![Page 11: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/11.jpg)
UFPr Departamento de Informática 11
Modelo Entidade Relacionamento
Instância
– Uma instância de TE é constituída de um conjunto de valores sendo um valor para cada atributo do TE.
– Uma instância de TA é constituída de um conjunto de valores (que pode ser vazio) e de um conjunto de ocorrências de TE: um valor para cada atributo do TA (se existe um) e para cada papel do TA uma ocorrência do TE que ocupa este papel.
![Page 12: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/12.jpg)
UFPr Departamento de Informática 12
Modelo Entidade Relacionamento
Diagrama ER
• tipos de entidade são representados por retângulos;
• os tipos de associação por losangos (ou símbolos similares (elipse, hexágono, retângulo arredondado,..).
• Os atributos são ligados aos TE e TA por traços.
![Page 13: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/13.jpg)
UFPr Departamento de Informática 13
Modelo Entidade Relacionamento
Exemplo de Diagrama ER
Empregados
Rayon Artigo
FornecedorChefe
EmpregaLivra
Venda
nome salário
nomeR andar
quantidade
quantidade
quantidadenomeA tipo
nomeF endereçoE
R
R
R A
A
F
Sup
Inf
![Page 14: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/14.jpg)
UFPr Departamento de Informática 14
Modelo Entidade Relacionamento
Diagrama ER
• Neste diagramas são representados quatro tipos de entidade:
– Empregado, de atributos nome e salário – Rayon de atributos nomR e andar; – Artigo de atributos nomeA;– Fornecedor de atributos nomeF e
endereço
![Page 15: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/15.jpg)
UFPr Departamento de Informática 15
Modelo Entidade Relacionamento
Tipo de associação
- Livra, de atributo quantidade ligando Fornecedor (com o papel F), artigo (com o papel A) e Rayon , (com o papel
R);
-Venda, de atributo quantidade ligando Rayon (papel R) com Artigo (papel A);
- Chefe que é cíclica, ligando Empregado (papel Inf) e Empregado (papel Sup).
![Page 16: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/16.jpg)
UFPr Departamento de Informática 16
Modelo Entidade Relacionamento
generalização especialização
• Dependendo do ponto de vista ou nível de abstração um mesmo conjunto de objetos pode ser visto como várias classes diferentes mesmo se existem características em comum.
![Page 17: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/17.jpg)
UFPr Departamento de Informática 17
Modelo Entidade Relacionamento
Generalização Especializacão
• O TE Artigo agrupa todos os artigos vendidos, porque certos tratamentos a serem realizados sobre este TE utilizam todos os artigos (inventário, procura do preço, quantidade etc:).
• Pode ser útil separar os artigos em várias classes (alimentação, eletrodomésticos, vestuário, etc:)
![Page 18: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/18.jpg)
UFPr Departamento de Informática 18
Modelo Entidade Relacionamento
Generalização Especialização
• .Neste caso teríamos:– tratamentos específicos para cada classe
criada, (controle de validade para Alimentação, promoções no natal p/ eletrodomésticos, promoções de estação para vestuário, etc).
– classe com características próprias (data de validade para alimentação, tamanho e cor p/ Vestuário, etc).
![Page 19: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/19.jpg)
UFPr Departamento de Informática 19
Modelo Entidade Relacionamento
Generalização Especialização
• Nós seríamos assim conduzidos à descrever, em complemento ao TE Artigo, outros TE's mais especializados, representando classes sobre as quais existem tratamentos e características importantes à acrescentar.
![Page 20: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/20.jpg)
UFPr Departamento de Informática 20
Modelo Entidade Relacionamento
Generalização Especialização
• Este tipo de raciocínio resulta numa situação, até agora, não representável pelo modelo ER, os mesmos objetos são representados por TEs diferentes!!!
![Page 21: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/21.jpg)
UFPr Departamento de Informática 21
Modelo Entidade Relacionamento
Generalização Especialização
• Para descrever esta situação, os modelos de dados mais recentes incluem o conceito de generalização/especialização: uma ligação orientada de um TE especializado à um TE genérico.
![Page 22: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/22.jpg)
UFPr Departamento de Informática 22
Modelo Entidade Relacionamento
Generalização Especialização
• A semântica desta ligação é que toda ocorrência do TE específico é igualmente ocorrência do TE genérico. Graficamente esta ligação é representada por uma flecha do TE específico ao TE genérico.
![Page 23: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/23.jpg)
UFPr Departamento de Informática 23
Modelo Entidade Relacionamento
Generalização Especialização
– No exemplo dos artigos nós obtemos a seguinte representação para os artigos:
Artigo
Artigo
Alimentar
Art Vestuário Art Eletro-Domésticos
![Page 24: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/24.jpg)
UFPr Departamento de Informática 24
Modelo Entidade Relacionamento
Generalização Especialização
• As ligações de generalização/especialização são geralmente chamados ligações IS-A ou É-UM
• dizemos que Artigo alimentar é um Artigo. Alguns autores chamam um TE específico de um sub-tipo de um TE genérico (a relação inversa é dita de super-tipo).
![Page 25: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/25.jpg)
UFPr Departamento de Informática 25
Modelo Entidade Relacionamento
Generalização Especialização
• Por convenção, os atributos comuns ao TE genérico e aos TE específicos só são descritos, no esquema, como atributos do TE genérico. No entanto eles estão implicitamente incluídos nos atributos do TE específico. Dizemos que estes ;últimos "herdam" os atributos do TE genérico.
![Page 26: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/26.jpg)
UFPr Departamento de Informática 26
Modelo Entidade Relacionamento
Generalização Especialização
• O que foi dito para os atributos se aplica também aos TA (herança).
• Se artigo está ligado a fornecedor, então Artigo Alimentar, Artigo Vestuário e Artigo ED também estão mesmo que isto não seja descrito explicitamente pelo esquema.
![Page 27: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/27.jpg)
UFPr Departamento de Informática 27
Modelo Entidade Relacionamento
Generalização Especialização
• *** Nada impede que os TEs específicos tenham seus próprios atributos e seus próprios TA's. Assim o TE ArtigoEletrDom pode estar ligado a um TE "Serviço de reparação" e possuir um atributo "garantia
![Page 28: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/28.jpg)
UFPr Departamento de Informática 28
Modelo Entidade Relacionamento
Generalização Especialização
– Um diagrama mais preciso do exemplo dos Artigos ficaria assim:
Artigo
Artigo
Alimentar
Art Vestuário Art Eletro-Domésticos
ServiçoReparação
repara
data_validade tamanho cores
potência
marcanomeA
Num_Arttipo
Venda
![Page 29: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/29.jpg)
UFPr Departamento de Informática 29
Modelo Entidade Relacionamento
Generalização Especialização
– Não é obrigatório que os TE específicos representem, no seu conjunto todos os objetos representados pelo TE genérico
– Artigos como higiene, brinquedos etc. podem não exigir um TE específicos para descreve-los (se nenhum tratamento ou propriedade necessária à descrição do esquema o exigir) e serem descritos simplesmente pelos TE Artigos.
![Page 30: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/30.jpg)
UFPr Departamento de Informática 30
Modelo Entidade Relacionamento
Generalização Especialização
• Um TE genérico pode por sua vez ser TE específico de um outro TE: acontece então uma hierarquia de generalização.
![Page 31: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/31.jpg)
UFPr Departamento de Informática 31
Modelo Entidade Relacionamento
Hierarquia de generalização
• Um exemplo clássico de hierarquia de generalização é o das pessoas que trabalham ou estudam numa Universidade:
Pessoa
Estudante Trabalhador
Doutorando
ProfessorTécnico Administração
TitularAssistente
![Page 32: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/32.jpg)
UFPr Departamento de Informática 32
Modelo Entidade Relacionamento
Definição de um Esquema ER
• Um TE é definido por:– Nome do TE;– Nome do(s) supertipo(s) deste TE, se
existe;– Descrição livre (comentário) precisando a
população exata do TE;– Descrição dos atributos do TE.
• ** Restrições: Dois TE não podem ter o mesmo nome
![Page 33: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/33.jpg)
UFPr Departamento de Informática 33
Modelo Entidade Relacionamento
Ex: O TE Empregados
– Nome: Empregados;– descrição: Toda pessoa salariada ligada à
Empresa atualmente.• A descrição livre permite a definição exata (não
ambígua) da população do TE.• inclui a especificação temporal (sublinhada no
exemplo)– atributos: nome, salário (com as respectivas
descrições).
![Page 34: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/34.jpg)
UFPr Departamento de Informática 34
Modelo Entidade Relacionamento
Tipo de associação:• Definição• Nome do TA;• Descrição livre;• Nome dos TE participantes ao TA com os
respectivos papeis;• Para cada papel a cardinalidade (numero
mínimo e máximo das instancias de um TA que podem a um momento dado ligar pelo seu papel, uma instancia do TE em questão).
• a descrição dos atributos do TA (opcional).
![Page 35: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/35.jpg)
UFPr Departamento de Informática 35
Modelo Entidade Relacionamento
Tipo de Associação
• Exemplo– nome: emprega;– descrição: liga um empregado ao rayon
no qual ele trabalha hoje– TE participantes: <Empregado,E>,
<Rayon,R>– cardinalidade E:min=0,max=1 R:(O,n)– atributos: nenhum.
![Page 36: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/36.jpg)
UFPr Departamento de Informática 36
Modelo Entidade Relacionamento
Cardinalidade• Min=0: um empregado pode não trabalhar em
nenhum rayon;• min=1 um empregado deve trabalhar no mínimo
em um rayon;• max=1 um empregado não pode trabalhar em mais
de um rayon;• max=n um empregado pode trabalhar em vários
rayons.
– As cardinalidade é indicada por dois números(min:max) ao lado dos traços que ligam os TE's aos TA's:
![Page 37: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/37.jpg)
UFPr Departamento de Informática 37
Modelo Entidade Relacionamento
Cardinalidade
– A cardinalidade exprime o fato que um filho tem no mínimo e no máximo dois pais, e que os pais podem ter de 0 a n filhos.
Pais Filhosé_pai_de0,n 2,2
![Page 38: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/38.jpg)
UFPr Departamento de Informática 38
Modelo Entidade Relacionamento
TA Cíclico
• Ligam um TE a ele mesmo• os papeis são obrigatórios e devem ser colocados no
diagrama:
Produto Compõe
é_composto_de
é_componente_de
quantidade
![Page 39: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/39.jpg)
UFPr Departamento de Informática 39
Modelo Entidade Relacionamento
Exemplos de Instâncias de um TA
– Se nós introduzimos no BD a composições do produto 1001:
– 5 unidades do produto 512 – 3 unidades do produto 123
![Page 40: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/40.jpg)
UFPr Departamento de Informática 40
Modelo Entidade Relacionamento
Exemplos de Instâncias de um TA
– TE Produto:• produto 123, • produto 512,• produto 1001
– TA Compõe:• é_composto_de é_componente_de
quantidade
• produto 1001 produto 123 3
• produto 1001 produto 512 5
![Page 41: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/41.jpg)
UFPr Departamento de Informática 41
Modelo Entidade Relacionamento
Atributo
• Definição– nome;– -descrição– -cardinalidade;– -domínio (se o atributo é simples);– -descrição dos atributos componentes, se
o atributo é complexo;
![Page 42: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/42.jpg)
UFPr Departamento de Informática 42
Modelo Entidade Relacionamento
Exemplo: o atributo nome do TE Empregado:
• nome: nome;• descrição: nome do empregado, nome de
solteira para uma mulher• cardinalidade (1:1) • domínio: CHAR (15)
![Page 43: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/43.jpg)
UFPr Departamento de Informática 43
Modelo Entidade Relacionamento
Exemplo o atributo data de nascimento:
– nome: data de nascimento;– descrição: "data de nascimento de uma
pessoa"– cardinalidade: (1:1)
![Page 44: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/44.jpg)
UFPr Departamento de Informática 44
Modelo Entidade Relacionamento
Exemplo o atributo data de nascimento:• composição:–nome: dia descrição " "
cardinalidade: (1:1); domínio: Numérico [1..31]
–nome: mês descrição " " cardinalidade: (1:1); domínio: Numérico [1..12]
–- nome: ano descrição " " cardinalidade: (1:1); domínio: Numérico [1870..1994]
![Page 45: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/45.jpg)
UFPr Departamento de Informática 45
Modelo Entidade Relacionamento
Terminologia:
• atributo simples: atributo não composto de outros atributos, valores atômicos possuem domínio (salário, telefone);
• atributo complexo: composto de outros atributos (endereço composto de (rua, cidade, CEP);
![Page 46: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/46.jpg)
UFPr Departamento de Informática 46
Modelo Entidade Relacionamento
Terminologia:
• atributo monovalor: atributo com cardinalidade máxima =1 (nome, data nascimento);
• atributo multivalorado: vários valores por instância max > 1 (filhos de uma pessoa)
![Page 47: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/47.jpg)
UFPr Departamento de Informática 47
Modelo Entidade Relacionamento
Terminologia:
• atributo obrigatório: (min=1) possui pelo menos um valor por ocorrência (nome);
• atributo opcional: (min=0) pode ter valor nulo (telefone)
![Page 48: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/48.jpg)
UFPr Departamento de Informática 48
Modelo Entidade Relacionamento
Identificadores dos TE's e TA's
• Conjunto mínimo de atributos que assegura a inexistência de duas instâncias idênticas neste TE (TA).
• Um TE (TA) pode ter vários identificadores.
![Page 49: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/49.jpg)
UFPr Departamento de Informática 49
Modelo Entidade Relacionamento
Identificadores dos TE's e TA's
– Exemplo: Numero de Matrícula para Estudantes (ou nomeE + data nascimento se supormos que dois estudantes não podem ter o mesmo nome e a mesma data de nascimento).
Estudante Matériaprova
Num_Matrículanotas média
peso
Num_Matéria
![Page 50: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/50.jpg)
UFPr Departamento de Informática 50
Modelo Entidade Relacionamento
Identificadores dos TE's e TA's
• Os identificadores dos TE's Estudante e Matéria são respectivamente Num_matrícula e Num_Matéria.
• O identificador do TA prova é Estudante.Num_matrícula + Matéria.Num_Matéria.
![Page 51: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/51.jpg)
UFPr Departamento de Informática 51
Modelo Entidade Relacionamento
Identificadores de um TA
– Nem sempre o identificador de um TA é formado do conjunto dos identificadores dos TE's ligados.
– O identificador de um só TE (no caso se a cardinalidade for 1:1) pode ser suficiente.
– Se o TA liga dois TE's com cardinalidade 0:n para ambos.
• Neste caso é necessário incluir pelo menos um atributo do TA para estar seguro da unicidade das instâncias:
![Page 52: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/52.jpg)
UFPr Departamento de Informática 52
Modelo Entidade Relacionamento
Identificadores de um TA
• TA encomenda pode possuir dois identificadores:– Num_Produto + Num_Cliente + data ou
Num_Encomenda.
Produto Clienteencomenda
num_ProdutoNum_Cliente
Num_Encomdata
quantidade
![Page 53: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/53.jpg)
UFPr Departamento de Informática 53
Modelo Entidade Relacionamento
Identificador de um TE fraco
• nenhum subconjunto de atributos constitui um identificador
• é ligado por um TA binário de cardinalidade (1,1) à um outro TE ao qual ele é dependente.
![Page 54: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/54.jpg)
UFPr Departamento de Informática 54
Modelo Entidade Relacionamento
Identificador de um TE fraco
– No exemplo abaixo. Exemplar ( que representa um exemplar de um livro) é um TE fraco (numEX não é identificador) que depende do TE livro.
Livro Exemplar
ISBN Título numEX EstadoConserv
possui
![Page 55: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/55.jpg)
UFPr Departamento de Informática 55
Modelo Entidade Relacionamento
Identificador de um TE fraco
• O identificador de um TE fraco (que é o mesmo do seu TA) é formado do identificador do TE ao qual ele depende e de um (ou vários) atributos do TE fraco.
• O identificador de Exemplar, no nosso exemplo, é portanto ISBN + numEX.
![Page 56: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/56.jpg)
UFPr Departamento de Informática 56
Modelo Entidade Relacionamento
Identificador de um TE subtipo.
• Seja um TE E subtipo do TE E', então todo identificador de E’ é também identificador de E. E não possui necessariamente um identificador próprio.
• No exemplo dos Artigos ArtigoAlimentar, ArtigoVestuário e ArtigoEletrDomest têm todos os três num_Art (do TE Artigo) como identificador.
![Page 57: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/57.jpg)
UFPr Departamento de Informática 57
Modelo Entidade Relacionamento
Restrições de Integridade
• Os conceitos de Entidade, Associação, atributo e subtipo não são suficientes para descrever todas as propriedades dos dados de um esquema ER.
Casamento
nome sexo EstadoCivil
CasadoEsposa
marido
data
![Page 58: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/58.jpg)
UFPr Departamento de Informática 58
Modelo Entidade Relacionamento
Restrições de Integridade
• se uma pessoa participa à associação casamento , então seu estado civil deve ser 'casado'
• Ou:
– ∀x,y ε Pessoa, <x,y> ε casamento => x.estadoCivil = casado
![Page 59: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/59.jpg)
UFPr Departamento de Informática 59
Modelo Entidade Relacionamento
Restrições de Integridade– Em geral SGBDs, as RI sãoverificadas por
programas ad hoc, criados na fase de implementação do BD.
– Outras regras seriam possíveis neste mesmo exemplo:
• se uma pessoa participa a associação casamento com o papel marido então sexo=’M'
• se uma pessoa participa a associação casamento com o papel esposa então sexo=’F'
![Page 60: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/60.jpg)
UFPr Departamento de Informática 60
Modelo Entidade Relacionamento
Regras de Restrição
• Definem os estados possíveis do BD,• Se os valores do BD não as satisfazem
existe um "erro" no BD, • diz-se que o BD está incoerente.
![Page 61: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/61.jpg)
UFPr Departamento de Informática 61
Modelo Entidade Relacionamento
Regras de Restrição (Domínio)
• idade ε [0..130]– Este tipo de regras, facilmente
implementáveis, desaparecem se o modelo possui uma linguagem de descrição que permita uma definição precisa do domínio.
![Page 62: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/62.jpg)
UFPr Departamento de Informática 62
Modelo Entidade Relacionamento
Esquema Conceitual ER
• Esquema conceitual ER = ( {TE}, {TA}, {RI})
![Page 63: Modelo Entidade Relacionamento · Modelo Entidade Relacionamento Generalização Especialização –Não é obrigatório que os TE específicos representem, no seu conjunto todos](https://reader033.fdocument.pub/reader033/viewer/2022042920/5f67b2b0a5858b081050bb1e/html5/thumbnails/63.jpg)
UFPr Departamento de Informática 63
Modelo Entidade Relacionamento