# Banco de Dados #Aula 06 - MODELAGEM DE DADOS
(Generalização e Especialização)
Prof. Leinylson Fontinele Pereira
Na aula anterior...
Banco de Dados Relacional# Modelo Lógico
11:14 Banco de Dados: Aula 06 - MODELAGEM DE DADOS ((Generalização e Especialização)
O que vamos aprender?
MODELAGEM DE DADOS# Generalização
# Especialização
11:14 Banco de Dados: Aula 06 - MODELAGEM DE DADOS ((Generalização e Especialização)
Vamos começar?
11:14 5 Banco de Dados: Aula 06 - MODELAGEM DE DADOS ((Generalização e Especialização)
Generalização e Especialização
11:14 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Generalização e Especialização
11:14 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Definição# Uma Entidade pode possuir propriedade iguais, e outra parte com
propriedades diferentes
• Por exemplo: Entidade Cliente pode ser Pessoa Física ou Jurídica
• Como pessoa Física Nome, CPF e RG
• Como pessoa Jurídica os dados serão Nome, CNPJ e IE
# Pessoa Física e Jurídica tem o Nome em comum, porém CPF,RG, CNPJ e IE são diferentes para cada subgrupo
Generalização e Especialização
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Generalização e Especialização
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Generalização e Especialização
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Aplicação 1
# Criar uma única tabela para todas as especializações e incluir um campo diferenciador
#Juntar todos os tipos de Cliente, em uma únicatabela e acrescentar mais um campo para identificaro Cliente
Generalização e Especialização: Aplicação 1
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Generalização e Especialização
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Aplicação 2
# Criar uma tabela para cada especialização e definir mais um campo identificador
Generalização e Especialização: Aplicação 2
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Especialização : total ou parcial
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Especialização Total (T)
# Quando uma entidade possui obrigatoriamente umaligação com a entidade genérica
Para cada ocorrência da entidade genérica existesempre ocorrência em uma das entidades especializadas
Especialização : total ou parcial
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Especialização : total ou parcial
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Especialização Parcial (P)
# Quando uma entidade não tem obrigatoriamente umaligação com a entidade genérica
Nem toda ocorrência da entidade genéricacorresponde a uma entidade especializada
Especialização : total ou parcial
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Mais exemplos de Generalização/Especialização
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Contexto:
Precisamos armazenar o código de identificação, cor e capacidade de passageiros dos veículos que possuímos.
Modelo conceitual:
Mais exemplos de Generalização/Especialização
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Contexto:
Precisamos armazenar o código de identificação, cor e capacidade de passageiros dos veículos que possuímos.
Modelo lógico:
Outros tipos...
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Herança Múltipla# É quando uma especialização pode pertencer a várias Entidades
Generalizadoras.
Generalização e Especialização em vários níveis# Uma Entidade Genérica pode pussuir entidades
especializadoras, que por sua vez, essa entidadeespecializadora se torna uma entidade Genérica e possuientidades especializadoras. Não há limite!
Exercício 1
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Construir um banco de dados para agenciamento de empregados Uma empresa de agenciamento de empregados pretende informatizar o seu cadastro de
profissionais e candidatos a empregos temporários.
Seu objetivo é construir um banco de dados onde possa manter os dados cadastrais dosprofissionais e seus contratos temporários com as empresas clientes.
O profissional é identificado pelo seu CPF e, além dessa informação, ficam registrados o seu nome,endereço, nascimento e profissão.
Os contratos de empregados temporários são feitos individualmente (um contrato para cadaprofissional) com as empresas clientes. Cada contrato é identificado por um número único e nelesão registrados a empresa contratante, a vigência do contrato (data de início e de término) e o valorpago por hora trabalhada.
As empresas clientes são identificadas por um CNPJ e possuem um nome e endereço.
Exercício 1: possível resolução
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Banco de dados para agenciamento de empregados
Exercício 1: possível resolução
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Banco de dados para agenciamento de empregados
Material: https://sites.google.com/site/leinylsonnassau
11:15
Aula baseada no material do:
Prof. Gustavo Zimmermann
Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Nesta aula aprendemos...
MODELAGEM DE DADOS# Generalização
# Especialização
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)
Na próxima aula veremos...
MODELAGEM DE DADOS# Normalização de dados
# Formas Normais
11:15 Banco de Dados II: Aula 04 - MODELAGEM DE DADOS ((Generalização e Especialização)