mapeamento modelo conceitual lógicosantanch/teaching/db/... · marcadores e categorias modelo...

90
Mapeamento Modelo Conceitual Lógico Banco de Dados: Teoria e Prática André Santanchè e Patrícia Cavoto Instituto de Computação – UNICAMP Agosto 2015 Picture by http://www.flickr.com/photos/morganmorgan/ 2010

Upload: others

Post on 29-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

MapeamentoModelo Conceitual Lógico→

Banco de Dados: Teoria e PráticaAndré Santanchè e Patrícia CavotoInstituto de Computação – UNICAMP

Agosto 2015

Pic

ture

by

htt

p:/

/ww

w.f

lickr

.co

m/p

ho

tos/

mo

rgan

mo

rgan

/ 201

0

Page 2: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Modelo/Esquema Conceitual

▪ Descreve estrutura do Banco de Dados

▫ entidades, tipos de dados, relações, restrições etc.

▪ Independente de implementação em SGBD

▫ oculta detalhes de armazenamento físico

Modelo Conceitual

Banco de Dados

Visão Externa 1 Visão Externa 2 Visão Externa n

Usuários Finais

Modelo Lógico

Modelo Físico

esquema conceitual

esquema lógico

esquema físico

requisitos requisitos requisitos

Independente de SGBD

Dependente de SGBD

Page 3: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Modelo/Esquema Lógico

▪ Dependente de um SGBD particular

▪ Associado a um “modelo de dados de implementação” (Elmasri, 2005)

Modelo Conceitual

Banco de Dados

Visão Externa 1 Visão Externa 2 Visão Externa n

Usuários Finais

Modelo Lógico

Modelo Físico

esquema conceitual

esquema lógico

esquema físico

requisitos requisitos requisitos

Independente de SGBD

Dependente de SGBD

Page 4: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Modelo Lógico

esquema conceitual

esquema lógico

Banco de Dados

Modelo Físico

esquema físico

Modelo Conceitual

Visão Externa 1 Visão Externa 2 Visão Externa n

requisitos requisitos requisitos

Independente de SGBD

Dependente de SGBD

Page 5: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento E-R Relacional→

Lógico

Conceitual Entidade-Relacionamento

Relacional

Banco de DadosRelacional

mapeamento

Page 6: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento Objeto Relacional→

Lógico

Conceitual Orientado aObjetos

Relacional

Banco de DadosRelacional

mapeamento

Page 7: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento Objeto Objeto→

Banco de DadosOrientado a

Objetos

Lógico

Conceitual Orientado aObjetos

Orientado aObjetos

mapeamento

Page 8: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento ER Objeto→

Banco de DadosOrientado a

Objetos

Lógico

Conceitual

Orientado aObjetos

mapeamento

Entidade-Relacionamento

Page 9: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamentos

ER Relacional→Objeto Relacional→

Page 10: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 1Entidade Regular

Page 11: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Entidade Regular

L IVRO

ISBN

título

autor

ano categoria

?

Page 12: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 1

Entidade Regular

▪ Entidade regular traduzida em relação (tabela)

▪ Atributos da entidade traduzidos em atributos (colunas) da relação

▫ Atributos identificadores convertidos em chave primária

Page 13: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 1

Entidade Regular

LIVRO

ISBN

título

autor

ano categoria

LIVRO(ISBN, Título, Autor, Ano, Categoria)

LIVRO

ISBN Título Autor Ano Categoria

9580471444 Vidas Secas Graciliano Ramos 1938 Romance

958047950X Agosto Rubem Fonseca 1990 Romance

0554253216 Micrographia Robert Hooke 1665 Ciências

Page 14: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Classe

-isbn: String-titulo: String-autor: String-ano: int-categoria: String

Livro

?

Page 15: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Classe como Entidade?

LIVRO

ISBN

título

autor

ano categoria

?-isbn: String-titulo: String-autor: String-ano: int-categoria: String

Livro

Page 16: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 1

Classe

▪ Classe traduzida em relação (tabela)

▪ Atributos da classe traduzidos em atributos (colunas) da relação

▪ Chave primária – opções:

▫ definida a partir dos atributos relacionais

▫ atributo novo de identificador único que emula o dos objetos

Page 17: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 1

Entidade Regular

LIVRO

ISBN

título

autor

ano categoria

LIVRO(ISBN, Título, Autor, Ano, Categoria)

LIVRO

ISBN Título Autor Ano Categoria

9580471444 Vidas Secas Graciliano Ramos 1938 Romance

958047950X Agosto Rubem Fonseca 1990 Romance

0554253216 Micrographia Robert Hooke 1665 Ciências

-isbn: String-titulo: String-autor: String-ano: int-categoria: String

Livro

Page 18: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Caso dos Marcadores

Page 19: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores de Sites na WebModelo ER

título

endereço

acessos

Marcador

Page 20: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores de Sites na WebModelo UML

Marcador-titulo: String-endereco: String-acessos: int

Page 21: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores e CategoriasModelo Relacional

Marcador(Titulo, Endereco, Acessos)

Titulo AcessosTerra 295

2SBC 26Correios 45

296Google 1590Yahoo 134Orkut 45

3Submarino 320

Endereco http://www.terra.com.br

POVRay http://www.povray.org http://www.sbc.org.br http://www.correios.com.br

GMail http://www.gmail.com http://www.google.com http://www.yahoo.com http://www.orkut.com

iBahia http://www.ibahia.com http://www.submarino.com.br

Page 22: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 2Relacionamento 1:1

Page 23: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamento 1:1

ARMÁRIOOCUPA1 1

código

nome

telefone

PESSOA

código tamanho

?

Page 24: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamento 1:1

?

Pessoa Armárioocupa

0..1 0..1

Page 25: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamento 1:1

ARMÁRIOOCUPA1 1

código

nome

telefone

PESSOA

código tamanho

?

Pessoa Armárioocupa

0..1 0..1

Page 26: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamentos 1:1

Tipo de Relacionamento

Regra de Implementação

Tabela Própria

Adição Coluna

Fusão Tabelas

(0,1 ) (0,1 )

(0,1 ) (1 ,1 )

(1 ,1 ) (1 ,1 )

(Heuser, 2004)

Page 27: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

PESSOA ARMÁRIOOCUPA(0,1) (0,1)

Etapa 2

Relacionamento 1:1

▪ Exemplo:

▪ Três alternativas:

a) Chave estrangeira (Adição de coluna)

b) Relacionamento incorporado (Fusão de tabelas)

c) Relação de relacionamento (Tabela própria)

Page 28: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Relacionamento 1:1 (Opção A)

Chave Estrangeira

▪ Opção mais usada

▫ deve ser seguida a não ser em casos excepcionais

▪ Chave primária de uma das relações torna-se chave estrangeira da outra

ARMÁRIOOCUPA(0,1) (0,1)

código

nome

telefone

PESSOA

código tamanho

Page 29: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Relacionamento 1:1 (Opção A)

Quem deve apontar para quem?

ARMÁRIOOCUPA1 1

código

nome

telefone

PESSOA

código tamanho

?

Pessoa Armárioocupa

0..1 0..1

Page 30: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

UML navegabilidade→

Pessoa Armárioocupa

0..1 0..1

Pessoa Armárioocupado

0..1 0..1

Page 31: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

ARMÁRIOOCUPA(0,1) (0,1)

código

nome

telefone

PESSOA

código tamanho

ARMÁRIO(Código, Tamanho)

Código Tamanho

1A simples

2A duplo

1B simples

2B duplo

ARMÁRIOCódigo Nome Telefone

1525 Asdrúbal 5432-1098

1637 Doriana 9876-5432

1701 Quincas 8765-4321

2042 Melissa 7654-3210

2111 Horácio 6543-2109

PESSOA

PESSOA(Código, Nome, Telefone)

Page 32: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

ARMÁRIOOCUPA(0,1) (0,1)

código

nome

telefone

PESSOA

código tamanho

ARMÁRIO(Código, Tamanho, Ocupante)

Código Nome Telefone

1525 Asdrúbal 5432-1098

1637 Doriana 9876-5432

1701 Quincas 8765-4321

2042 Melissa 7654-3210

2111 Horácio 6543-2109

PESSOA

Código Tamanho Ocupante

1A simples 1637

2A duplo (nulo)

1B simples (nulo)

2B duplo 2111

ARMÁRIO

PESSOA(Código, Nome, Telefone)

Page 33: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

ARMÁRIO(Código, Tamanho)

Código Tamanho

1A simples

2A duplo

1B simples

2B duplo

ARMÁRIO

Código Nome Telefone

1525 Asdrúbal 5432-1098

1637 Doriana 9876-5432

1701 Quincas 8765-4321

2042 Melissa 7654-3210

2111 Horácio 6543-2109

PESSOA

PESSOA(Código, Nome, Telefone)

Pessoa Armárioocupado

0..1 0..1

Page 34: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

ARMÁRIO(Código, Tamanho, Ocupante)

Código Nome Telefone

1525 Asdrúbal 5432-1098

1637 Doriana 9876-5432

1701 Quincas 8765-4321

2042 Melissa 7654-3210

2111 Horácio 6543-2109

PESSOA

Código Tamanho Ocupante

1A simples 1637

2A duplo (nulo)

1B simples (nulo)

2B duplo 2111

ARMÁRIO

PESSOA(Código, Nome, Telefone)

Pessoa Armárioocupado

0..1 0..1

Page 35: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

ARMÁRIOOCUPA(0,1) (0,1)

código

nome

telefone

PESSOA

código tamanhodata hora

PESSOA(Código, Nome, Telefone)

ARMÁRIO(Código, Tamanho, Ocupante, Data, Hora)

Código Tamanho Ocupante Data Hora

1A simples 1637 03/08 10:20

2A duplo (nulo) (nulo) (nulo)

1B simples (nulo) (nulo) (nulo)

2B duplo 2111 03/08 11:45

ARMÁRIOCódigo Nome Telefone

1525 Asdrúbal 5432-1098

1637 Doriana 9876-5432

1701 Quincas 8765-4321

2042 Melissa 7654-3210

2111 Horácio 6543-2109

PESSOA

Page 36: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Relacionamento 1:1 (Opção B)

Relacionamento Incorporado

▪ Fusão das duas relações em uma única

▪ Recomendação: ambas devem ter participação total na relação

Page 37: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Relacionamento 1:1 (Opção C)

Relação de Relacionamento

▪ Relacionamento se transforma em terceira relação

▪ Terceira relação – referência cruzada

▫ mantém chave de ambas as relações envolvidas no relacionamento

Page 38: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

ARMÁRIO(Código, Tamanho)

Código Tamanho

1A simples

2A duplo

1B simples

2B duplo

ARMÁRIOCódigo Nome Telefone

1525 Asdrúbal 5432-1098

1637 Doriana 9876-5432

1701 Quincas 8765-4321

2042 Melissa 7654-3210

2111 Horácio 6543-2109

PESSOA

PESSOA(Código, Nome, Telefone)

OCUPA(CodPessoa, CodArmário, Data, Hora)

CodPessoa CodArmário Data Hora

1637 1A 03/08 10:20

2111 2B 03/08 11:45

OCUPA

ARMÁRIOOCUPA(0,1) (0,1)

código

nome

telefone

PESSOA

código tamanhodata hora

Page 39: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Exercício 1

▪ Mapeie o seguinte modelo ER para relacional:

Vírus

nome identificador data

possui Genoma(0,1) (1,1)

Page 40: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 3Relacionamento 1:n

Page 41: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamento 1:n

Estante LivroGuarda1 n

?

(1,1)(0,n)Estante LivroGuarda

Page 42: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamentos 1:n

(Heuser, 2004)

Tipo de Relacionamento

Regra de Implementação

Tabela Própria

Adição Coluna

Fusão Tabelas

(0,1 ) (0,n)

(0,1 ) (1 ,n)

(1 ,1 ) (0,n)

(1 ,1 ) (1 ,n)

Page 43: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Relacionamento 1:N

Chave Estrangeira

▪ Chave primária de uma das relações torna-se chave estrangeira da outra

Estante LivroGuarda1 n

(1,1)(0,n)Estante LivroGuarda

Page 44: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Chave Estrangeira

?

ESTANTE

código estante capacidade

(1,1)(0,n)GUARDA LIVRO

ISBN

título

autor

ano categoria

Page 45: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Chave Estrangeira

ESTANTE(código_estante, capacidade)

LIVRO(isbn, título, autor, ano, categoria, ref_estante)

- ref_estante: chave estrangeira para ESTANTE

ESTANTE

código estante capacidade

(1,1)(0,n)GUARDA LIVRO

ISBN

título

autor

ano categoria

Page 46: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Categorias de MarcadoresModelo ER

Serviços

Vendas

Superior

subcategoria

super-categoria

Categoria

Superior

super-categoriasubcategorian 1

título

Page 47: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Categorias de MarcadoresModelo ER

Categoria

Superior

super-categoriasubcategoria(0,1) (0,n)

título

Categoria

Superior

super-categoriasubcategorian 1

título

Page 48: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Serviços

Vendas

Superior

subcategoria

super-categoria

subordinada

+super-categoria

+subcategoria0..1

0..*

Categoria-titulo: String

Categorias de MarcadoresModelo UML

Page 49: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores e CategoriasModelo ER

Pertencen 1

Categoria

Superior

super-categoriasubcategorian 1

títulotítulo

endereço

acessos

Marcador

Page 50: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores e CategoriasModelo ER

Pertence(1,1) (0,n)

Categoria

Superior

super-categoriasubcategoria(0,1) (0,n)

títulotítulo

endereço

acessos

Marcador

Page 51: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores e CategoriasModelo UML

subordinada

+super-categoria

+subcategoria0..1

0..*

Categoria-titulo: String

Marcador-titulo: String-endereco: String-acessos: int

pertence

0..* 1..1

Page 52: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores e CategoriasModelo Relacional

Marcador(Titulo, Endereco, Acessos, Categoria)

Titulo Acessos CategoriaTerra 295 Portal

2 CGSBC 26 SociedadeCorreios 45 Serviços

296Google 1590 BuscaYahoo 134 ServiçosOrkut 45 Serviços

3 PortalSubmarino 320 Serviços

Endereco http://www.terra.com.br

POVRay http://www.povray.org http://www.sbc.org.br http://www.correios.com.br

GMail http://www.gmail.com Mail http://www.google.com http://www.yahoo.com http://www.orkut.com

iBahia http://www.ibahia.com http://www.submarino.com.br

Page 53: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Tabela TaxonomiaModelo Relacional

Geral

Serviços AcadêmicoRelacionamento

Busca Portal Mail Vendas Universidade CG Sociedade

Categoria SuperiorGeralServiços GeralAcadêmico GeralRelacionamento GeralBusca ServiçosPortal Serviços

ServiçosVendas ServiçosUniversidade AcadêmicoCG AcadêmicoSociedade Acadêmico

Mail

Page 54: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Tabela TaxonomiaModelo Relacional

Geral

Serviços AcadêmicoRelacionamento

Busca Portal Mail Vendas Universidade CG Sociedade

Categoria SuperiorGeralServiços GeralAcadêmico GeralRelacionamento GeralBusca ServiçosPortal Serviços

ServiçosVendas ServiçosUniversidade AcadêmicoCG AcadêmicoSociedade Acadêmico

Mail

superior

Page 55: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores e CategoriasModelo Relacional

Marcador(Titulo, Acessos, Endereco, Categoria)

- Categoria: chave estrangeira para TAXONOMIA

Taxonomia(Categoria, Superior)

- Superior: chave estrangeira para TAXONOMIA

Page 56: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Marcadores e CategoriasDiagrama Relacional (notação pé de galinha)

Marcador(Titulo, Acessos, Endereco, Categoria)

- Categoria: chave estrangeira

para Taxonomia

Taxonomia(Categoria, Superior)

Page 57: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Exercício 2▪ Mapeie o seguinte modelo ER para relacional:

nome

trataCoquetel(0,N)

nome

Retrovírus(1,1)

nome

trataCoquetel1

nome

RetrovírusN

Page 58: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 4Relacionamento n:m

Page 59: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamento n:m

?

PESSOA LIVROESCREVE(0,n) (1,n)

Page 60: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamentos n:m

(Heuser, 2004)

Tipo de Relacionamento

Regra de Implementação

Tabela Própria

Adição Coluna

Fusão Tabelas

(0,n) (0,n)

(0,n) (1 ,n)

(1 ,n) (1 ,n)

Page 61: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Relacionamento M:N

Relação de Relacionamento

▪ Relacionamento se transforma em terceira relação

▪ Terceira relação – referência cruzada

▫ mantém chave de ambas as relações envolvidas no relacionamento

ESCREVE(0,n) (1,n)

código

nome

telefone

PESSOA LIVRO

ISBN

título

autor

ano categoria

Page 62: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Relacionamento M:N

Relação de Relacionamento

PESSOA(código, nome, telefone)

LIVRO(isbn, título, autor, ano, categoria)

ESCREVE(código_autor, isbn_livro)

- código_autor: chave estrangeira para PESSOA

- isbn_livro: chave estrangeira para LIVRO

ESCREVE(0,n) (1,n)

código

nome

telefone

PESSOA LIVRO

ISBN

título

autor

ano categoria

Page 63: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Exercício 3

▪ Mapeie o seguinte modelo ER para relacional:

identificador data

contémGenoma(0,N)

código

Gene(0,N)

Page 64: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 5Entidade Fraca

Page 65: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Entidade Fraca

?

(0,n) (1,1)LIVRO

ISBN

título

autor

ano categoria

sequência

data aquisição

TEM EXEMPLAR

Page 66: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 5

Entidade Fraca

▪ Entidade fraca traduzida em tabela

▪ Atributos da entidade traduzidos em colunas da relação

▪ Chave estrangeira na tabela/entidade fraca = chave primária da entidade proprietária

▪ Chave primária da tabela/entidade fraca

▫ Atributos identificadores da entidade fraca

+

▫ Chave primária da entidade proprietária

Page 67: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 5

Entidade Fraca

LIVRO(ISBN, Título, Autor, Ano, Categoria)EXEMPLAR(ISBN, Sequência, DataAquisicao)

(0,n) (1,1)LIVRO

ISBN

título

autor

ano categoria

sequência

data aquisição

TEM EXEMPLAR

Page 68: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 6Atributos Multivalorados

Page 69: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 6

Atributos Multivalorados

▪ Modelo Relacional não permite atributos multivalorados

?Autores

Page 70: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 6

Atributos Multivalorados

▪ Atributo vira tabela M

▪ Chave primária da entidade vira chave estrangeira de M

▪ Chave primária de M:

▫ Chave primária da entidade

+

▫ Atributo multivalorado

Page 71: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 6

Atributos Multivalorados

▪ Se atributo for composto, componentes viram colunas de M

Endereço

Rua Número Cidade Estado

Page 72: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 7Relacionamento n-ário

Page 73: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Relacionamento n-ário

n

1Distribuidor

Cidade

Livro

Distribuição

n

?

Page 74: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Exercício 4▪ Mapeie o seguinte modelo ER para relacional:

nome

trataCoquetelN

nome_científico

Retrovírus1

id descrição

TipoPaciente

N

dosagem

Page 75: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 8Herança (OO)

Generalização/Especialização (EER)

Page 76: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Generalização / Especialização

data associaçãodata admissão função

FUNCIONÁRIO ASSOCIADO

PESSOA

código

nome

telefone

ct?

Page 77: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

UML: HerançaPessoa

-código: String-nome: String-telefone: int

Funcionário-admissão: Date-função: String

Associado-associação: Date

Page 78: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Mapeamento

Generalização / Especialização

especialização total x classe abstrata

data associaçãodata admissão função

FUNCIONÁRIO ASSOCIADO

PESSOA

código

nome

telefone

ct ?

Pessoa-código: String-nome: String-telefone: int

Funcionário-admissão: Date-função: String

Associado-associação: Date

Page 79: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

MÍDIA

código

título

ano

LIVRO

autorISBN

categoria

produtordiretor

DVD

xp

Mapeamento

Generalização / Especialização

?

Page 80: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

UML: HerançaMídia

-código: String-título: String-ano: int-categoria: String

Livro-ISBN: String-autor: String

DVD-diretor: String-produtor: String

Page 81: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

MÍDIA

código

título

ano

LIVRO

autorISBN

categoria

produtordiretor

DVD

xp

Mapeamento

Generalização / Especialização

?Mídia

-código: String-título: String-ano: int-categoria: String

Livro-ISBN: String-autor: String

DVD-diretor: String-produtor: String

Page 82: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Etapa 8

Generalização / Especialização

▪ Uma tabela por hierarquia

▪ Uma tabela por entidade especializada

▫ Subdivisão da entidade genérica

Page 83: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Exercício 5▪ Mapeie o seguinte modelo ER para relacional:

nome

trataCoquetel(0,N)

Retrovírus(1,1)

nome_científico

Vírus

VírusDNA

tipo_cadeia

Page 84: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

ER Biblioteca

PERTENCE(1,n) (0,n)

PESSOA ARMÁRIOOCUPA(0,1) (0,1)

EMPRÉSTIMO

(0,n)

(0,1)

CATEGORIA

SUBORDINADA

super-categoriasubcategoria(0,1) (0,n)

ESTANTE

GUARDA

(1,1)

(0,n)

LIVRO

Page 85: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

LimiteDe

1

N

End-Deixar

EndereçoResidencial

Até

End-Apanhar

1

N

@

1

1

1

Zona

Zona

Fila

DataHoraIn*KMIn*

CorridaAgendada

Data PedidoData Hora Corrida

1

N

1

1

Logradouro

LogIdNomeCidadeEstado

Numeração

Número

[Complemento][Bairro][CEP]

Cliente

CliIdNome[CPF][CGC]

1

N

N0

1

1

N

N

N

Legenda:[ ] - atributo opcional* - informação preenchida após inclusão inicial@ - um táxi só pode aparecer uma vez na fila

CorridaEfetivada

Hora Início Fila

Hora DeixouKm Final

Hora Apanhou

1

1

N

1

Motorista

CNHNome

CNHValid

Taxi

PlacaMarca

ModeloAnoFabLicença

MT

Endereço

1

1

1

N

1

1

1 1N N

por prof. Geovane Cayres Magalhães

Page 86: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Referências

▪ Codd, Edgar Frank (1970) A relational model of data for large shared data banks. Communications ACM 13(6), 377-387.

▪ Elmasri, Ramez; Navathe, Shamkant B. (2010) Sistemas de Banco de Dados. Pearson, 6a edição em português.

▪ Guimarães, Célio (2003) Fundamentos de Bancos de Dados: Modelagem, Projeto e Linguagem SQL. Editora UNICAMP, 1a edição.

Page 87: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Referências▪ Heuser, Carlos Alberto (2004) Projeto de Banco de

Dados. Editora Sagra Luzzato, 5a edição.

▪ Ramakrishnan, Raghu; Gehrke, Johannes (2003) Database Management Systems. McGraw-Hill, 3rd edition.

Page 88: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

Agradecimentos

▪ Luiz Celso Gomes Jr (professor desta disciplina em 2014) pela contribuição na disciplina e nos slides.

Page 89: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

André Santanchèhttp://www.ic.unicamp.br/~santanche

Page 90: Mapeamento Modelo Conceitual Lógicosantanch/teaching/db/... · Marcadores e Categorias Modelo Relacional Marcador(Titulo, Endereco, Acessos) Titulo Acessos Terra 295 2 SBC 26 Correios

License▪ These slides are shared under a Creative Commons License.

Under the following conditions: Attribution, Noncommercial and Share Alike.

▪ See further details about this Creative Commons license at:http://creativecommons.org/licenses/by-nc-sa/3.0/