Modelo EntidadeRelacionamento (MER

)
É baseado em uma percepção do mundo real representada por um conjunto de objetos denominados ENTIDADES e pelo conjunto dos relacionamentos entre estes objetos  Entidade

É um objeto que pode ser identificado de forma unívoca em relação a todos os outros objetos Concreta: pessoa Abstrata: empréstimo

Uma entidade pode ser:
 

Conjuntos de Entidades

Conjunto de todas as entidades de um mesmo tipo, que possuem as mesmas propriedades: atributos

Exemplo:

Cliente - Conjunto de todas as pessoas que são clientes de um banco

Uma entidade pode fazer parte de mais de um conjunto de entidades (CEs)

Exemplo:

Entidade Pessoa → Conjunto de Entidades Funcionário e Conjunto de Entidades Cliente

Atributos
São propriedades que descrevem cada entidade de um CEs  Uma entidade é representada por um conjunto de atributos distintos

Exemplo:

Cliente: Cliente_nome, Seguro_social

Cada entidade pode ter seu próprio valor em cada atributo

Exemplo:

Entidade: João Alves com n.º de seguro 111-25-478

Domínio do Atributo
 Para

cada atributo há um conjunto de valores possíveis, chamado domínio, do atributo
 Exemplo:

Conta_número é um atributo, cujo domínio é o conjunto de todos os strings de um certo tamanho

CEs Cliente
Jaqueline Bruno Benedito João Alves Sandra Eduardo Carlos Sandra 321-54-987 451-47-855 123-45-789 111-25-478 452-44-855 654-33-142 546-20-789 142-65-423 Av. Olegário Maciel, 390 Av. Castelo Branco, 405 Travessa Rafael, 55 Rua Jaques Felix, 23 R. das Flores, 21 Av. Independência Av. Itália Av. 9 de julho Mairiporã Taubaté Mairiporã Mairiporã Mairiporã Caçapava Taubaté S. J. Campos

CEs Conta
6061-1 6061-2 6061-3 6061-4 6061-5 6061-6 6061-7 6061-8 R$ 50,00 R$ 1000,00 R$ 12,00 R$ 340,00 R$ 33000,00 R$ 1200,00 R$ 15000,00 R$ 700,00

Atributos
 Uma

entidade pode ser descrita por um conjunto de pares (atributos, valores de dados)
 Exemplo:

Cliente: {(Cliente_nome, Alves), (RG, 111-25478), (Cliente_rua, Jaques Felix), (Cliente_cidade, Mairiporã)}

Tipos de Atributos
 Simples

ou Compostos

 Simples

Não são divididos em partes  Exemplo: Cliente_cidade
 Compostos

Podem ser divididos em outros atributos  Exemplo: Cliente_endereço pode ser dividido em Cliente_logradouro e Cliente_logradouro_número

Tipos de Atributos
 Monovalorados
 Monovalorados

ou Multivalorados

Os atributos possuem um único valor para uma única entidade  Exemplo: Empréstimo_número
 Multivalorados

O atributo possui um conjunto de valores para uma única entidade  Exemplo: Dependente_nome

Tipos de Atributos

Nulo

É usado quando uma entidade não possui ou desconhece o valor de um determinado atributo

Exemplo: Um funcionário que não possua dependentes terá o valor do atributo Dependente_nome nulo

Derivado

O valor desse atributo pode ser derivado de outros atributos ou entidades a ele relacionadas

Exemplo: tempo_de_casa.

Tempo_de_casa = data_corrente – data_contratação

Relacionamentos
 Um

relacionamento é uma associação entre uma ou várias entidades
Exemplo:

O relacionamento do cliente Alves com a conta 6061-2

 Conjunto

de relacionamentos (CRs)

 Conjunto

de todos os relacionamentos de um mesmo tipo

CRs ClienteConta
Jaqueline Bruno Benedito João Alves Sandra Eduardo Carlos Sandra 321-54987 451-47-855 123-45-789 111-25-478 452-44-855 654-33-142 546-20-789 142-65-423 Av. Olegário Maciel, 390 Av. Castelo Branco, 405 Travessa Rafael, 55 Rua Jaques Felix, 23 R. das Flores, 21 Av. Independência Av. Itália Av. 9 de julho Mairiporã Taubaté Mairiporã Mairiporã Mairiporã Caçapava Taubaté S. Campos J. 6061-1 6061-2 6061-3 6061-4 6061-5 6061-6 6061-7 6061-8 R$ 50,00 R$ 1000,00 R$ 12,00 R$ 340,00 R$ 33000,00 R$ 1200,00 R$ 15000,00 R$ 700,00

Papel de uma Entidade
É a função que uma entidade desempenha em um relacionamento  É implícito, já que os CEs, que participam de um CRs, são em geral distintos  Entretanto são úteis quando o significado de um relacionamento precisa ser esclarecido

Exemplo:

O mesmo CEs participa de um CRs mais de uma vez

Este tipo de CRs é chamado de conjunto de relacionamentos recursivos

CRs Recursivos

Nomes explícitos de papéis são necessários para especificar como uma entidade participa de uma instância de relacionamento

Exemplo:
 

CEs Funcionário CRs trabalha_para: ordena os pares de entidades Funcionário O primeiro Funcionário de um par tem um papel de gerente e o segundo de Funcionário Todos os relacionamentos de trabalha_para são caracterizados pelos pares (gerente, Funcionário) Os pares (Funcionário, gerente) são excluídos

Relacionamentos
 Um

relacionamento atributos descritivos
 Exemplo:

pode

possuir

O relacionamento ClienteConta é descrito pelo atributo Data_acesso  O relacionamento entre as entidades cliente Alves e conta 6061-2 é descrito por {(Data_acesso, 04 de maio de 2007)}

Relacionamentos

Binário → envolvem dois conjuntos de entidades

Exemplo:

Relacionamento ClienteConta

Não-binários → associam conjuntos de entidades

mais

de

dois

Exemplo:

relacionamento ternário entre as entidades do cliente Alves, conta 6061-2 e agência Centro Cliente Alves, conta 6061-2 e agência Centro é uma instância do relacionamento CCA

O número de CEs que participa de um CRs é também o grau desse CRs
 

Um CRs binário tem grau dois Um CRs ternário tem grau três

CEs ou Atributos ?

Conjunto de entidades Funcionário → Funcionário_nome, Funcionário_rg e Funcionário_telefone Redefinindo o conjunto de entidades Funcionário tem-se:
de entidades Funcionário → Funcionário_nome e Funcionário_rg Conjunto de entidades Telefone → Telefone_número e Telefone_local Conjunto de relacionamentos FuncionárioTelefone, que faz a associação entre os funcionários e seus números de telefone
Conjunto

Como distinguir entre um atributo e um CEs?

A distinção dependerá da estrutura da empresa a ser modelada e da semântica associada ao atributo em questão

CEs ou CRs ?

Exemplo:
   

Relacionamento entre os CEs: Cliente e Agência Atributos descritivos: empréstimo_número e conta_número Cada empréstimo é representado por um relacionamento entre um cliente e uma agência Empréstimo de 1 cliente para 1 agência

Representação inadequada para relacionamentos N para M
 

Replicação de dados, causando desperdício de memória Atualizações podem levar a dados inconsistentes

Como distinguir entre um CEs e um CRs ?
 Recorrer

ao CRs para descrever uma ação que ocorre entre entidades
 Exemplo:

Ces: Cliente e Empréstimo  CRs: Devedor

Mapeamento de Restrições
Mapeamento
É

das Cardinalidades

o número de entidades associadas a uma outra entidade através de um conjunto de relacionamentos  É mais útil na descrição de conjuntos de relacionamentos binários

Pode ser dos seguintes tipos:
   

Um para um Um para muitos Muitos para um Muitos para muitos

Relacionamento Um para Um

Uma entidade em A está associada no máximo a uma entidade em B, e uma entidade em B está associada a no máximo uma entidade em A

(a)

(b)

Relacionamento Um para Muitos

Uma entidade em A está associada a várias entidades em B. Entretanto, uma entidade em B, deve estar associada a no máximo uma entidade em A

(a)

(b)

Relacionamento Muitos para Um
Uma

entidade em A está associada no máximo a uma entidade em B. Uma entidade em B, entretanto, pode estar associada a um número qualquer de entidades em A

(a)

(b)

Relacionamento Muitos para Muitos

Uma entidade em A está associada a um número qualquer de entidades em B, e uma entidade em B está associada a um número qualquer de entidades em A

(a)

(b)

Dependência de Existência
 Define

que se uma entidade x depende da existência de uma entidade y, então x é uma entidade subordinada e y é uma entidade dominante  Se a entidade y for apagada, a entidade x também será
 Exemplo:
 

entidade Funcionário → entidade dominante entidade Dependente → entidade subordinada

Participação Total e Parcial
A

participação de um CEs E no CRs R é dita:
 Total:

se todas as entidades em E participam do relacionamento R  Parcial: se somente algumas entidades em E participam do relacionamento R

Chaves
Super
É

chave

um conjunto de um ou mais atributos, que permite identificar univocamente uma entidade em um conjunto de entidades

Exemplo:
  

RG → é uma super chave Cliente_nome e RG → é uma super chave Cliente_nome → não é uma super chave

Chaves
Chave
 São

candidata

super chaves que não possuem nenhum subconjunto que seja uma super chave  Exemplo:
RG → é uma chave candidata  Cliente_nome e Cliente_rua → é uma chave candidata  RG e Cliente_nome → não é uma chave candidata

Chaves

Chave primária
uma chave candidata cuja principal função é identificar uma entidade como única dentro de um conjunto de entidades  Exemplo:
RG → é uma chave primária  Cliente_nome → não é uma chave primária

É

Composição da Chave Primária para Conjuntos de Relacionamentos
 Seja

R um relacionamento. A chave primária de R depende do mapeamento da cardinalidade do conjunto de relacionamentos.

Exemplo
→ chave primária RG  Conta → chave primária Conta_número  Se o relacionamento ClienteConta não possui atributos descritivos e o mapeamento da cardinalidade do relacionamento é do tipo:
 Cliente

MUITOS PARA MUITOS: então sua superchave é {RG, Conta_número}

  

MUITOS PARA UM: então sua chave primária é {RG} UM PARA MUITOS: então sua chave primária é {Conta_número} UM PARA UM: então sua chave primária pode ser {RG} ou {Conta_número}

Exemplo
→ chave primária RG  Conta → chave primária Conta_número  Se o relacionamento ClienteConta possui o atributo descritivo Data_acesso e o mapeamento da cardinalidade do relacionamento é do tipo:
 Cliente
   

MUITOS PARA MUITOS: então sua superchave é {RG, Conta_número, Data_acesso} MUITOS PARA UM: então sua superchave é {RG, Data_acesso} UM PARA MUITOS: então sua superchave é {Conta_número, Data_acesso} UM PARA UM: então sua superchave pode ser {RG, Data_acesso} ou {Conta_número, Data_acesso}

Diagrama EntidadeRelacionamento (E-R)
 Contém

os seguintes componentes:
→ representam conjuntos de

Retângulos

entidades Elipses → representam atributos Losangos → representam conjuntos de relacionamentos Linhas → ligam conjuntos de entidades a atributos e conjuntos de entidades aos conjuntos de relacionamentos Elipses duplas → representam atributos multivalorados Linhas duplas → indicam participação total de uma entidade em um conjunto de relacionamentos

DER - Relacionamento Muitos para Muitos ClienteConta
 Os

atributos de um CEs que são membros de uma chave primária devem ser sublinhados
RG Cliente-rua

Cliente-nome

Cliente-cidade

Conta-número

Saldo

Cliente

Depositante

Conta

DER - Relacionamento Um para Muitos

Para distinguir a cardinalidade de um relacionamento, deve-se desenhar uma linha direcionada (→) ou não direcionada () entre o conjunto de relacionamentos e o conjunto de entidades em questão
RG Cliente-rua

Cliente-nome

Cliente-cidade

Conta-número

Saldo

Cliente

1

Cliente Conta

N

Conta

DER - Relacionamento Muitos para Um
RG Cliente-rua

Cliente-nome

Cliente-cidade

Conta-número

Saldo

Cliente

N

Cliente Conta

1

Conta

DER - Relacionamento Um para Um
RG Cliente-rua

Cliente-nome

Cliente-cidade

Conta-número

Saldo

Cliente

1

Cliente Conta

1

Conta

DER com Indicadores de Papéis

Para indicar papéis em um diagrama E-R, deve-se rotular as linhas que conectam retângulos a losangos
Funcionárionome Funcionário -RG

Funcionário

1

gerente trabalhapara trabalhador

N

DER com Relacionamento Ternário
Agência -cidade Agência -nome Fundos

Agência RG Clientenome Cliente Cliente-rua Clientecidade
N 1

Contanúmero Saldo

CCA

M

Conta

CEs Fracas

É o conjunto de entidades que não possui atributos suficientes para constituir uma chave primária Um conjunto de entidades fracas deve participar de um relacionamento do tipo um para muitos

Exemplo:

Dependente → conjunto de entidades fracas

Um membro de um CEs fracas é uma entidade subordinada

CEs Fortes
É

o conjunto de entidades que possui uma chave primária

Exemplo:
Funcionário → conjunto de entidades fortes

 Um

membro de um CEs fortes é uma entidade dominante

Identificador (Chave parcial)

É um conjunto de atributos que fornece a distinção entre as entidades fracas de uma entidade forte em particular.

Exemplo:

Dependente-nome → é um identificador

A chave primária para um conjunto de entidades fracas é constituída pela chave primária do seu conjunto de entidades fortes e por seu identificador

Exemplo:

Funcionário-rg e Dependente-nome → é uma chave primária para o conjunto de entidades fracas Dependente

CEs Fracas
São identificadas em um DER pela linha dupla usada no retângulo e no losango do relacionamento correspondente  O identificador de um CEs fracas é sublinhado com uma linha tracejada

Conta-número Data Saldo Transaçãonúmero Quantia

Conta

1

Log

N

Transação

Recursos para Extensão do MER
 Especialização  Generalização  Herança

de atributos  Agregação

Especialização
 Um

conjunto de entidades pode conter subgrupos de entidades que possuam alguma(s) característica(s) diferentes das demais  É o processo de projetar subgrupos dentro de um conjunto de entidades  É representada por um triângulo rotulado de ISA ou “É UM(a)”

Especialização - Exemplo
Contanúmero Saldo

Conta

O relacionamento “É UM(A)” pode ser entendido como um relacionamento de super ou subclasse

É UMA

Conta-poupança

Conta-corrente

Taxa-juros

Limite-chequeespecial

Os conjuntos de entidades em nível superior e inferior são também representados por um retângulo contendo o nome do CEs

Generalização
Contanúmero Saldo

Conta

O refinamento do CEs em subgrupos indica um desenvolvimento topdown do projeto (especialização)

É UMA

Conta-poupança

Conta-corrente

Taxa-juros

Limite-chequeespecial

É o desenvolvimento do projeto de modo bottom-up, no qual conjuntos de entidades são sintetizados em um CEs em alto nível, com base em atributos comuns

Generalização
Contanúmero Saldo

Conta

Expressa o relacionamento existente entre um CEs de nível superior e um ou mais CEs de nível inferior

É UMA

Conta-poupança

Conta-corrente

Taxa-juros

Limite-chequeespecial

CEs superiores e inferiores também podem ser chamados de superclasses e subclasses respectivamente

Generalização
A

generalização é simplesmente o inverso da especialização Também representada por um triângulo rotulado de ISA ou “É UM(a)” É utilizada para enfatizar as semelhanças entre os conjuntos de entidades de nível inferior e ocultar suas diferenças
Representação

mais econômica Evita a repetição de atributos compartilhados

Generalização - Exemplo
Contanúmero Saldo

Conta

O relacionamento “É UM(A)” pode ser entendido como um relacionamento de super ou subclasse

É UMA

Conta-poupança

Conta-corrente

Taxa-juros

Limite-chequeespecial

Os conjuntos de entidades em nível superior e inferior são também representados por um retângulo contendo o nome do CEs

Herança de Atributos
É

uma propriedade das entidades de nível superior e inferior criada pela especialização e pela generalização  Os atributos dos conjuntos de entidades de nível superior são herdados pelos conjuntos de entidades de nível inferior  Exemplo:
 Conta-corrente

e conta-poupança herdam os atributos do CEs Conta

Herança de Atributos
RG Cliente-rua Conta-número Saldo Cliente-nome Cliente-cidade

Cliente

Cliente Conta

Conta

Os conjuntos de entidades de nível inferior também herdam a participação nos conjuntos de relacionamentos dos quais seus conjuntos entidades de nível superior participam Propriedades válidas para a especialização e generalização

É UMA

Conta-poupança

Conta-corrente

Taxa-juros

Limite-chequeespecial

Agregação: DER com relacionamentos redundantes
RG Clientenome Cliente Clienterua Clientecidade Devedor Empréstimo -número Empréstimo Saldo

Talvez pareça que os conjuntos de relacionamentos Devedor e Agenteempréstimo devam ser combinados, contudo isto tornaria a lógica do esquema obscura

Agenteempréstimo

Funcionário Funcionário-rg Funcionáriotelefone

Funcionário -nome

DER com Agregação
RG Clientenome Cliente Clienterua Clientecidade Devedor Empréstimo -número Empréstimo Total

Agregação: é a abstração por meio da qual relacionamentos são tratados como entidades de nível superior

Agenteempréstimo

Funcionário Funcionário-rg Númerotelefone

Funcionário -nome

Redução de um DER a Tabelas
 Um

BD que é representado por um DER, pode também ser representado por um conjunto de tabelas  Para cada CEs e para cada CRs existe uma tabela única com campos únicos  Cada tabela é nomeada com o nome do CEs ou CRs correspondente

Representação Tabular dos CEs Fortes
Seja E um CEs fortes com n atributos, então E será representada por uma tabela contendo n atributos  Cada linha desta tabela corresponde a uma entidade do CEs E

RG Clientenome Cliente Data Cliente-rua Clientecidade
N Cliente Conta M

Contanúmero Saldo

Transaçãonúmero

Quantia

Conta

1

Log

N

Transação

Exemplo

O CEs Conta será representado por uma tabela denominada Conta, contendo duas colunas, como ilustrado a seguir
Conta-número 6061-1 6061-2 6061-3 6061-4 6061-5 6061-6 6061-7 6061-8 Saldo R$ 50,00 R$ 1000,00 R$ 12,00 R$ 340,00 R$ 33000,00 R$ 1200,00 R$ 15000,00 R$ 700,00

Tabela Conta

Representação Tabular dos CEs Fortes

Seja D1 o conjunto de todos os números de conta e D2 o conjunto de todos os saldos, qualquer linha da tabela Conta será uma 2tupla (v1,v2) onde v1 é um número de conta e v2 é um saldo

Em geral, a tabela Conta conterá um subconjunto do conjunto de todas as linhas possíveis  O conjunto de todas as linhas possíveis é representado pelo produto cartesiano D1 x D2
 

Se uma tabela possui n colunas o produto cartesiano é representado por D1 x D2 x ... x

Exemplo

O CEs Cliente será representado por uma tabela denominada Cliente, contendo quatro colunas
Cliente-nome Eduardo Carlos Sandra Sandra João Alves Benedito Jaqueline Bruno RG 654-33-142 546-20-789 142-65-423 452-44-855 111-25-478 123-45-789 321-54-987 451-47-855 Cliente-rua Av. Independência, 16 Av. Itália, 1200 Av. 9 de julho, 507 R. das Flores, 21 Rua Jacques Felix, 23 Travessa Rafael, 55 Av. Olegário Maciel, 390 Castelo Branco, 405 Av. Tabela Cliente Cliente-cidade Caçapava Taubaté S. J. Campos Mairiporã Mairiporã Mairiporã Mairiporã Taubaté

Representação Tabular dos CEs Fracas
Seja A um CEs fracas com r atributos e B o CEs fortes do qual A é dependente  Se B possui s atributos como chave primária, então A será representada por uma tabela contendo r ∪ s atributos  Exemplo:

  

O CEs Transação é dependente do CEs Conta Chave primária do CEs Conta: conta-número Atributos do CEs Transação: transação-número, data e quantia

Exemplo

O CEs Transação será representado por uma tabela denominada Transação, contendo quatro colunas
Conta-número Transação-número 6061-1 6061-2 6061-3 6061-4 6061-5 6061-6 6061-7 6067-8 5 11 36 41 19 57 01 13 Data 01/01/2004 07/02/2004 17/03/2004 07/04/2004 03/07/2004 04/05/2004 Quantia R$ 50,00 R$ 1000,00 R$ 12,00 R$ 340,00 R$ 1200,00 R$ 700,00

13/06/2004 R$ 33000,00 10/06/2004 R$ 15000,00

Tabela Transação

Representação Tabular dos Conjuntos de Relacionamentos
 Seja

R um CRs. Seja m o conjunto de atributos formado pela união das chaves primárias de cada CEs participantes de R  Seja n os atributos descritivos de R, se houver. Este CRs é representado pela tabela R contendo m ∪ n colunas distintas

1º Exemplo

Considere o CRs ClienteConta. Este CRs envolve os seguintes CEs:
 

Cliente: chave primária RG Conta: chave primária Conta-número

RG

Cliente-rua

Data Conta-número Saldo

Cliente-nome

Cliente-cidade

Cliente

N

Cliente Conta

M

Conta

1º Exemplo – Cont.

Uma vez que o relacionamento possui o atributo Data, a tabela ClienteConta possui três colunas
RG 111-25-478 123-45-789 142-65-423 142-65-423 321-54-987 451-47-855 452-44-855 546-20-789 546-20-789 654-33-142 Conta-número 6061-2 6061-3 6061-5 6061-6 6061-4 6061-1 6061-2 6061-7 6061-5 6061-8 Data 04-mai-01 01-jan-01 25-set-01 13-jun-01 10-jun-01 04-mai-01 17-mar-01 03-jul-01 08-nov-01 24-out-01

Tabela ClienteConta

2º Exemplo

Considere o CRs triplo CCA. Este relacionamento envolve os três seguintes CEs:
 Cliente:

chave primária RG  Conta: chave primária Conta-número  Agência: chave primária Agência-nome

2º Exemplo – Cont.
Uma vez que o relacionamento CCA não possui atributos descritivos, a tabela CCA possui três colunas

RG 111-25-478 123-45-789 142-65-423 142-65-423 321-54-987 451-47-855 452-44-855 546-20-789 546-20-789 654-33-142 Conta-número 6061-2 6061-3 6061-5 6061-6 6061-4 6061-1 6061-2 6061-7 6061-5 6061-8 Agência-nome Centro Justiça Federal CTA CTA Centro Monteiro Lobato Centro Monteiro Lobato CTA Caçapava

Tabela CCA

Tabelas Redundantes
 

O CRs ligando um CEs fracas ao seu CEs fortes é especial Estes relacionamentos são muitos-para-um e não possuem atributos descritivos
Data Cliente-rua Clientecidade Cliente
N Cliente Conta M

RG Clientenome

Contanúmero Saldo

Transaçãonúmero

Quantia

Conta

1

Log

N

Transação

Tabelas Redundantes
A chave primária de um CEs fracas inclui a chave primária do CEs fortes  Em geral, a tabela para um CRs ligando um CEs fracas ao seu CEs fortes é REDUNDANTE E NÃO PRECISA ESTAR PRESENTE em uma representação tabular de um DER

RG Clientenome Cliente Data Cliente-rua Clientecidade
N Cliente Conta M

Contanúmero Saldo

Transaçãonúmero

Quantia

Conta

1

Log

N

Transação

Exemplo
 Transação:

chave primária {contanúmero, transação-número}  Conta: chave primária é conta-número  Uma vez que o relacionamento log não possui atributos descritivos, a tabela log deveria ter duas colunas, conta-número e transação-número  Tabela Transação: conta-número, transação-número, data e quantia  Deste modo, a tabela log é redundante

Atributos Multivalorados
São representados no DER por uma elipse de linha dupla  Para estes atributos são criadas novas tabelas

RG Clientenome Cliente N Clienterua Clientecidade Agente -cliente Funcionário-rg M Funcionário -nome Funcionáriotelefone Funcionário

Dependentenome

Exemplo
 Suponha

que o CEs Funcionário possui o atributo multivalorado dependente-nome  Para o atributo dependente-nome é criada a tabela dependente com as colunas dependente-nome e Funcionário-rg

Representação Tabular da Generalização
Existem dois métodos para representar em forma tabular um DER que inclui generalização  1º Método:

 

Criar uma tabela para o CEs de nível superior Para cada CEs de nível inferior criar uma tabela contendo os atributos deste CEs e mais uma coluna para cada atributo da chave primária do CEs de nível superior

Exemplo:

Para o DER ao lado são criadas as tabelas:

Conta, com os atributos Conta-número e Saldo Conta-poupança, com os atributos Conta-número e Taxa-juros Conta-corrente, com os atributos Conta-número e Limite-cheque-especial

Contanúmero

Saldo

Conta

É UM

Conta-poupança

Conta-corrente

Taxa-juros

Limite-chequeespecial

Representação Tabular da Generalização
 2º

Método:
cada CEs de nível inferior, crie uma tabela que inclua uma coluna para cada um dos atributos deste CEs e mais uma coluna para cada atributo do conjuntoentidade de nível superior

 Para

Exemplo

Para o DER ao lado, são criadas as seguintes tabelas:

Contanúmero

Saldo

Conta

Conta-poupança, com os atributos Conta-número, Saldo e Taxa-juros Conta-corrente, com os atributos Conta-número, Saldo e Limite-chequeespecial

É UM

Conta-poupança

Conta-corrente

Taxa-juros

Limite-chequeespecial

Representação Tabular da Agregação
RG Clientenome Cliente Clienterua Clientecidade Devedor Empréstimo -número Empréstimo Total

A tabela para o CRs Agenteempréstimo inclui uma coluna para cada atributo da chave primária do CEs Funcionário e também para o CRs Devedor


Agenteempréstimo

Funcionário Funcionário-rg

Poderia também incluir uma coluna para cada atributo descritivo do CRs Agenteempréstimo

Funcionário -nome

Funcionáriotelefone

Representação Tabular da Agregação

Para o exemplo anterior são criadas as seguintes tabelas:
    

Cliente, com os atributos cliente-nome, rg, cliente-rua e cliente-cidade Empréstimo, com os atributos empréstimo-número e total Devedor, com os atributos rg e empréstimo-número Funcionário, com os atributos funcionário-rg, funcionário-nome e funcionário-telefone Agente-empréstimo, com os atributos rg, empréstimonúmero e funcionário-rg

Exercícios Sugeridos
 Fazer

os exercícios 2.1 a 2.7, 2.10 e 2.14 do capítulo 2 do livro texto [1]

Referência Bibliográfica

[1] Silberschatz, A.; Korth, H. F. e Sudarshan, S. Sistema de Banco de Dados. São Paulo: MAKRON Books, 1999.