Você está na página 1de 16

Modelo de Dados

(Transformao entre Modelos)


Projeto conceitual e o projeto relacional de BD
propem modelar dados em diferentes nveis de
abstrao
Projeto lgico de BD relacional objetiva
transformar o modelo ER em um modelo
relacional
Na prtica, algumas regras so seguidas para
transformar um modelo mais abstrato em um
modelo com mais detalhes de implementao

Modelo de Dados
(Transformao entre Modelos)
O termo implementao de projeto
lgico tambm utilizado para definir
transformao de um modelo conceitual
em um modelo relacional
Um modelo ER pode ser implementado em
vrios modelos relacionais
Cada modelo relacional implementado
pode ser considerado uma implementao
correta do modelo ER original

Modelo de Dados
(Transformao entre Modelos)
Cada modelo relacional implementado
pode significar diferentes performances no
banco de dados construdo futuramente
Todas as regras de transformao j
estabelecidas tm alguns objetivos
boa performance da base de dados resultante
simplificar o desenvolvimento e a manuteno
de aplicaes

Modelo de Dados
(Transformao entre Modelos)
Alm de melhoria de performance e
simplicidade, as regras de transformao
tambm objetivam:
evitar junes: junes envolvem diversos
acessos a disco
diminuir o nmero de chaves: cada chave
representa um ndice, que tem um custo de
manuteno
evitar campos opcionais: opcionalidade
condicional (controlada pelos aplicativos que
acessam o BD)

Modelo de Dados
(Transformao entre Modelos)
O processo de projeto lgico consiste dos
seguintes passos
1. Mapeamento de entidades e seus respectivos
atributos
2. Mapeamento de
generalizaes/especializaes
3. Mapeamento de relacionamentos e seus
atributos

Modelo de Dados
(Transformao entre Modelos)
O processo de projeto lgico consiste dos
seguintes passos
1. Mapeamento de entidades e seus respectivos
atributos
2. Mapeamento de
generalizaes/especializaes
3. Mapeamento de relacionamentos e seus
atributos

Modelo de Dados
(Transformao entre Modelos)
1. Mapeamento de entidades com atributos
monovalorados
Usuario
Id Usuario
Nome Usuario
Endereco

Usuario (Nome, RA, Endereco)

Modelo de Dados
(Transformao entre Modelos)
1. Mapeamento de entidades com atributos
multivalorados
Livro
ISBN
Titulo

Livro (ISBN, Titulo)


Autores (ISBN, Autor)

Autores
ISBN (FK)
Autor

Modelo de Dados
(Transformao entre Modelos)
2. Mapeamento de
generalizaes/especializaes
Trs alternativas:
1. Tabela nica para a entidade genrica e suas
especializaes
2. Tabelas para a entidade genrica e para as entidades
especializadas
3. Tabelas apenas para as entidades especializadas

Modelo de Dados
(Transformao entre Modelos)
2. Mapeamento de
generalizaes/especializaes
Pessoa
ID
Nome
Tipo
CPF
RG
CNPJ
Razo Social

1. Tabela nica: Pessoa (Id Pessoa, Nome, Tipo, Data


Nascimento, CPF, RG, CNPJ, Razo Social)

Modelo de Dados
(Transformao entre Modelos)
2. Mapeamento de
generalizaes/especializaes
Cliente
Id Cliente
Nome Cliente

Pessoa Fsica

2.

Pessoa Jurdica

Id Cliente (FK)

Id Cliente (FK)

CPF
RG

CNPJ
Razo Social

Tabelas para a entidade genrica e para as entidades especializadas


Cliente (Id Cliente, Nome Cliente)
Pessoa Fsica (Id Cliente, CPF, RG)
Pessoa Jurdica (Id Cliente, CNPJ, Razo Social)

Modelo de Dados
(Transformao entre Modelos)
2. Mapeamento de
generalizaes/especializaes
Cliente
Id Cliente
Nome Cliente

Pessoa Fsica

3.

Pessoa Jurdica

Id Cliente (FK)

Id Cliente (FK)

CPF
RG

CNPJ
Razo Social

Tabelas apenas para as entidades especializadas


Pessoa Fsica (Id Cliente, Nome Cliente, CPF, RG)
Pessoa Jurdica (Id Cliente, Nome Cliente, CNPJ, Razo Social)

Modelo de Dados
(Transformao entre Modelos)
3. Mapeamento de relacionamentos

Cardinalidade 1 1 (alternativa 1)
Pessoas (Cdigo, Nome, Nmero Carteira, Data
Expedio, Validade, Categoria, Data retirada)

Modelo de Dados
(Transformao entre Modelos)
3. Mapeamento de relacionamentos

Empregados
RG
Nome
Data Lotao
Cdigo (FK)

Departamentos
Cdigo
Nome

Cardinalidade 1N ou N-1 (alternativa 1)


Departamentos (Cdigo, Nome)
Empregados (RG, Cdigo, Nome, Data Lotao)

Modelo de Dados
(Transformao entre Modelos)
3. Mapeamento de relacionamentos

Empregados
RG
Nome

Lotao
RG (FK)

Departamentos

Data Lotao
Cdigo (FK)

Cdigo
Nome

Cardinalidade 1N ou N-1 (alternativa 2)

Departamentos (Cdigo, Nome)


Lotao (RG, Cdigo, Data Locao)
Empregados (RG, Nome)

Modelo de Dados
(Transformao entre Modelos)
3. Mapeamento de relacionamentos

Empregado

Participao

RG

RG (FK)
Cdigo (FK)

Nome

Data Incio

Departamento

Cardinalidade NN

Empregado (RG, Nome)


Projeto (Cdigo, Nome)
Participao (RG, Cdigo, Data Incio)

Cdigo
Nome

Você também pode gostar