Buscar

Normalização Detalhada

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Normalização
Processo que visa eliminar redundância de 
dados em arquivos ou tabelas.
1
Teoria da Normalização: conjunto de regras 
(formas normais) que determinam formas 
adequadas, sem redundâncias, de 
representação dos dados.
esquema 
na 2FN
Passagem
a 3FNPassagem
a 4FN
esquema 
na 3FN
Normalização
2
esquema de
arquivo ou
documento
Representação
como tabela
ÑN esquema não
normalizado
Passagem
a 1FN
esquema 
na 1FN
Passagem
a 2FN
esquema relacional
normalizado 
RELATÓRIO DE ALOCAÇÃO A PROJETO
CÓDIGO DO PROJETO: LSC001 TIPO: Novo Desenv.
DESCRIÇÃO: Sistema de Estoque
CÓDIGO DO
EMPREGADO
NOME CATEGORIA
FUNCIONAL
SALÁRIO DATA DE
INÍCIO NO
PROJETO
TEMPO
ALOCADO AO
PROJETO
2146 João A1 4 1/11/91 24
3145 Sílvio A2 4 2/10/91 24
Documento
3
3145 Sílvio A2 4 2/10/91 24
6126 José B1 9 3/10/92 18
1214 Carlos A2 4 4/10/92 18
8191 Mário A1 4 1/11/92 12
CÓDIGO DO PROJETO: PAG02 TIPO: Manutenção
DESCRIÇÃO: Sistema de RH
CÓDIGO DO
EMPREGADO
NOME CATEGORIA
FUNCIONAL
SALÁRIO DATA DE
INÍCIO NO
PROJETO
TEMPO
ALOCADO
AO PROJETO
8191 Mário A1 4 1/05/93 12
4112 João A2 4 4/01/91 24
6126 José B1 9 1/11/92 12
Tabela Não-Normalizada (ÑN)
CódProj Tipo Descr Emp
CodEmp Nome Cat Sal DataIni TempAl
LSC001 Novo Desenv. 2146 João A1 4 1/11/91 24Sistema de
Estoque 3145 Sílvio A2 4 2/10/91 24
4
6126 José B1 9 3/10/92 18
1214 Carlos A2 4 4/10/92 18
8191 Mário A1 4 1/11/92 12
PAG02 Manutenção 8191 Mário A1 4 1/05/93 12Sistema de
RH 4112 João A2 4 4/01/91 24
6126 José B1 9 1/11/92 12
Tabela não-normalizada possui tabelas aninhadas, 
grupos de repetição ou atributos multivalorados.
CódProj Tipo Descr Emp
CodEmp Nome Cat Sal DataIni TempAl
LSC001 Novo Desenv. 2146 João A1 4 1/11/91 24Sistema de
Estoque 3145 Sílvio A2 4 2/10/91 24
Tabela Não-Normalizada (ÑN)
5
6126 José B1 9 3/10/92 18
1214 Carlos A2 4 4/10/92 18
8191 Mário A1 4 1/11/92 12
PAG02 Manutenção 8191 Mário A1 4 1/05/93 12Sistema de
RH 4112 João A2 4 4/01/91 24
6126 José B1 9 1/11/92 12
Proj (CodProj,Tipo, Descr,
(CodEmp, Nome, Cat, Sal, DataIni, TempAl))
Primeira Forma Normal (1FN)
Uma tabela encontra-se na primeira forma normal
quando não possui tabelas aninhadas 
(grupos de repetição, atributos multivalorados).
6
(grupos de repetição, atributos multivalorados).
Passagem à 1FN
Proj (CodProj,Tipo, Descr,
(CodEmp, Nome, Cat, Sal, DataIni, TempAl))
ÑN
7
Proj (CodProj,Tipo, Descr, CodEmp, Nome, Cat, Sal, DataIni, TempAl)
1FN
11
Cada projeto tem vários empregados e cada 
empregado pode participar de mais de um projeto.
Passagem à 1FN
Proj (CodProj,Tipo, Descr,
(CodEmp, Nome, Cat, Sal, DataIni, TempAl))
ÑN
8
Proj (CodProj,Tipo, Descr)
CodProj, CodEmp, Nome, Cat, Sal, DataIni, TempAl )
1FN
ProjEmp (
CodProj tem que fazer parte da chave pois cada 
empregado pode participar de mais de um projeto.
Proj: 
CódProj Tipo Descr 
LSC001 Novo Desenv. Sistema de Estoque 
PAG02 Manutenção Sistema de RH 
 
Passagem à 1FN
9
 
ProjEmp: 
CódProj CodEmp Nome Cat Sal DataIni TempAl 
LSC001 2146 João A1 4 1/11/91 24 
LSC001 3145 Sílvio A2 4 2/10/91 24 
LSC001 6126 José B1 9 3/10/92 18 
LSC001 1214 Carlos A2 4 4/10/92 18 
LSC001 8191 Mário A1 4 1/11/92 12 
PAG02 8191 Mário A1 4 1/05/93 12 
PAG02 4112 João A2 4 4/01/91 24 
PAG02 6126 José B1 9 1/11/92 12 
 
Passagem à 1FN
ÑN
Arq-Candidatos (Cod-Curso,Nome-Curso, Numero-Vagas-Curso,
(Cod-Cand, Nome-Cand, Escore-Cand))
10
1FN
Cursos (Cod-Curso, Nome-Curso, Numero-Vagas-Curso)
Candidatos (Cod-Curso,Cod-Cand, Nome-Cand, Escore-Cand)
Cada candidato participa de apenas um concurso.
Dependência Funcional
Um atributo C2 depende funcionalmente de 
um atributo C1 (ou C1 determina C2) quando, 
em todas as tuplas da tabela, cada valor de C1 
está sempre associado ao mesmo valor de C2. 
11
está sempre associado ao mesmo valor de C2. 
Mais formalmente, C1 determina C2, quando 
para quaisquer duas tuplas X e Y da tabela, se 
X[C1] = Y[C1] então X[C2] = Y[C2]. 
Representação: C1 → C2
Dependência Funcional
… Cargo … Salário …
E1 10
E3 10
12
E1 10
E2 5
E3 10
E2 5
E1 10
Cargo → Salário
Dependência Funcional
A B C D
B 5 2 20
C 4 2 15
B 6 7 20
B 5 2 20
A não determina B: A→ B
→
13
B 5 2 20
C 2 2 15
C 4 2 15
A 10 5 18
A 12 3 18
A 10 5 18
B 5 2 20
C 4 2 15
A 10 5 18
C 4 2 15
A determina D: A→ D
O par (A,B) determina C: (A,B)→ C
Segunda Forma Normal (2FN)
ProjEmp:
CódProj CodEmp Nome Cat Sal DataIni TempAl
LSC001 2146 João A1 4 1/11/91 24
LSC001 3145 Sílvio A2 4 2/10/91 24
14
LSC001 3145 Sílvio A2 4 2/10/91 24
LSC001 6126 José B1 9 3/10/92 18
LSC001 1214 Carlos A2 4 4/10/92 18
LSC001 8191 Mário A1 4 1/11/92 12
PAG02 8191 Mário A1 4 1/05/93 12
PAG02 4112 João A2 4 4/01/91 24
PAG02 6126 José B1 9 1/11/92 12
Dependência Parcial
Uma dependência (funcional) parcial ocorre 
quando um atributo depende de parte da 
chave primária.
15
chave primária.
Nesse caso, a chave primária é composta 
(formada por mais de um atributo).
Dependência Parcial
ProjEmp:
CódProj CodEmp Nome Cat Sal DataIni TempAl
LSC001 2146 João A1 4 1/11/91 24
LSC001 3145 Sílvio A2 4 2/10/91 24
LSC001 6126 José B1 9 3/10/92 18
16
Dependências funcionais parciais:
CodEmp → Nome
CodEmp → Cat
CodEmp → Sal
LSC001 6126 José B1 9 3/10/92 18
LSC001 1214 Carlos A2 4 4/10/92 18
LSC001 8191 Mário A1 4 1/11/92 12
PAG02 8191 Mário A1 4 1/05/93 12
PAG02 4112 João A2 4 4/01/91 24
PAG02 6126 José B1 9 1/11/92 12
Segunda Forma Normal (2FN)
Uma tabela encontra-se na segunda forma normal
quando, além de estar na 1FN, não possui 
dependências parciais.
17
dependências parciais.
ProjEmp:
CódProj CodEmp Nome Cat Sal DataIni TempAl
LSC001 2146 João A1 4 1/11/91 24
LSC001 3145 Sílvio A2 4 2/10/91 24
LSC001 6126 José B1 9 3/10/92 18
Segunda Forma Normal (2FN)
18
LSC001 6126 José B1 9 3/10/92 18
LSC001 1214 Carlos A2 4 4/10/92 18
LSC001 8191 Mário A1 4 1/11/92 12
PAG02 8191 Mário A1 4 1/05/93 12
PAG02 4112 João A2 4 4/01/91 24
PAG02 6126 José B1 9 1/11/92 12
A tabela ProjEmp não está na 2FN.
Segunda Forma Normal (2FN)
dependências não parciais (totais)
19
ProjEmp ( CodProj, CodEmp, Nome, Cat, Sal, DataIni, TempAl )
1FN
CodProj, CodEmp
dependências parciais
Passagem à 2FN
ProjEmp ( CodProj, CodEmp, Nome, Cat, Sal, DataIni, TempAl )
1FN
CodProj, CodEmp
20
ProjEmp ( CodProj, CodEmp , DataIni, TempAl )
Emp ( CodEmp , Nome, Cat, Sal )
2FN
Tabelas na 2FN
21
Terceira Forma Normal (3FN)
22
Dependência Transitiva
Uma dependência (funcional) transitiva ocorre 
quando um atributo, além de depender da 
chave primária diretamente, depende também 
23
chave primária diretamente, depende também 
de forma transitiva.
De outra forma, uma dependência transitiva 
ocorre quando um atributo depende de outro 
atributo, além da chave primária.
Dependência Transitiva
24
Dependência transitiva:
CodEmp → Cat
CodEmp → Sal CodEmp → Cat → Sal 
Cat → Sal
Terceira Forma Normal (3FN)
Uma tabela encontra-se na terceira forma normal
quando, além de estar na 2FN, não possui 
dependências transitivas.
25
dependências transitivas.
Terceira Forma Normal (3FN)
26
A tabela Emp não está na 3FN.
Terceira Forma Normal (3FN)
Emp ( CodEmp, Nome, Cat, Sal )
27
Emp ( CodEmp, Nome, Cat, Sal )
Sal depende de CodEmp também por transitividade
(de forma indireta).
Passagem à 3FN
Emp ( CodEmp, Nome, Cat, Sal )
2FN
28
3FNEmp ( CodEmp, Nome, Cat ) Cat ( Cat, Sal )
Tabelas na 3FN
29
ÑN
Proj (CodProj,Tipo, Descr,
(CodEmp, Nome, Cat, Sal, DataIni, TempAl))
1FN
Proj (CodProj, Tipo, Descr)
ProjEmp (CodProj, CodEmp, Nome, Cat, Sal, DataIni, TempAl)
Normalização do Exemplo
30
ProjEmp (CodProj, CodEmp, Nome, Cat, Sal, DataIni, TempAl)
2FN
Proj (CodProj, Tipo, Descr)
ProjEmp (CodProj, CodEmp, DataIni, TempAl)
Emp (CodEmp, Nome, Cat, Sal)
3FN
Proj (CodProj, Tipo, Descr)
ProjEmp (CodProj, CodEmp, DataIni, TempAl)
Emp (CodEmp, Nome, Cat)
Cat (Cat, Sal)

Continue navegando