Buscar

Aula banco de dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 63 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 63 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 63 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UFPr Departamento de Informática 1
Modelo Entidade Relacionamento
Conceitos básicos e diagramas ER
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)
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.
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.
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, ...
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,....
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, ....
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,...
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, ....
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. 
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.
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.
UFPr Departamento de Informática 13
Modelo Entidade Relacionamento
Exemplo de Diagrama ER
Empregados
Rayon Artigo
FornecedorChefe
Emprega Livra
Venda
nome salário
nomeR andar
quantidade
quantidade
quantidade nomeA tipo
nomeF endereçoE
R
R
R A
A
F
Sup
Inf
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
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).
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.
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:)
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). 
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.
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!!!
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. 
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.
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
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).
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ãoimplicitamente incluídos nos atributos do 
TE específico. Dizemos que estes ;últimos 
"herdam" os atributos do TE genérico. 
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. 
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
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ço
Reparação
repara
data_validade tamanho cores
potência
marca nomeA
Num_Art
tipo
Venda
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.
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. 
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
Professor
Técnico Administração
TitularAssistente
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
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).
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).
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.
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:
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_de
0,n 2,2
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
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
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
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;
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)
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)
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]
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);
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)
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)
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.
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ícula notas média peso
Num_Matéria
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ículae Num_Matéria. 
• O identificador do TA prova é 
Estudante.Num_matrícula + 
Matéria.Num_Matéria.
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:
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_Produto
Num_ClienteNum_Encom
data
quantidade
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.
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
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.
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.
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
Casado
Esposa
marido
data
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
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'
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.
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.
UFPr Departamento de Informática 62
Modelo Entidade Relacionamento
Esquema Conceitual ER
• Esquema conceitual ER = ( {TE}, {TA}, 
{RI})
UFPr Departamento de Informática 63
Modelo Entidade Relacionamento

Outros materiais