banco de dados i aula 06 - generalização e especialização

27
# Banco de Dados # Aula 06 - MODELAGEM DE DADOS (Generalização e Especialização) Prof. Leinylson Fontinele Pereira

Upload: leinylson-fontinele

Post on 23-Jan-2018

130 views

Category:

Education


1 download

TRANSCRIPT

# 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)

Introdução

11:14 3 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)

Alguma Dúvida?

11:15

Até a próxima aula...

[email protected]