Segunda forma normal
A segunda normalização visa
eliminar redundâncias. É quando uma tabela não contém
dependências parciais que é quando
uma coluna depende apenas de parte de uma chave
primária composta.
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
|
Tabela somente na 1FN
Proj:
CódProj
|
Tipo
|
Descr
|
LSC001
|
Novo
Desenv.
|
Sistema
de Estoque
|
PAG02
|
Manutenção
|
Sistema
de RH
|
ProjEmp:
CódProj
|
CodEmp
|
DataIni
|
TempAl
|
LSC001
|
2146
|
1/11/91
|
24
|
LSC001
|
3145
|
2/10/91
|
24
|
LSC001
|
6126
|
3/10/92
|
18
|
LSC001
|
1214
|
4/10/92
|
18
|
LSC001
|
8191
|
1/11/92
|
12
|
PAG02
|
8191
|
1/05/93
|
12
|
PAG02
|
4112
|
4/01/91
|
24
|
PAG02
|
6126
|
1/11/92
|
12
|
Emp
CodEmp
|
Nome
|
Cat
|
Sal
|
2146
|
João
|
A1
|
4
|
3145
|
Sílvio
|
A2
|
4
|
6126
|
José
|
B1
|
9
|
1214
|
Carlos
|
A2
|
4
|
8191
|
Mário
|
A1
|
4
|
8191
|
Mário
|
A1
|
4
|
4112
|
João
|
A2
|
4
|
6126
|
José
|
B1
|
9
|
De forma mais precisa, o
processo de passagem da 1FN a 2FN é o seguinte.
1. Copiar para a 2FN cada
tabela que tenha chave primária simples ou que não tenha
colunas
além chave. No caso do exemplo, é o que acontece com a tabela Proj.
2. Para cada tabela com chave
primária composta e com, pelo menos, uma coluna não
chave (no
exemplo, a tabela ProjEmp).
3. Criar na 2FN uma tabela com
as chaves primárias da tabela na 1FN (no exemplo,
trata-se da tabela
ProjEmp na 2FN).
4. Para cada coluna não chave
fazer a seguinte pergunta: “a coluna depende de toda a
chave ou de
apenas parte dela?” Caso a coluna dependa de toda a chave (as
colunas
DataIni e TempAl da tabela ProjEmp)
5. Criar a coluna
correspondente na tabela com a chave completa na 2FN (a coluna
DataIni
e TempAl da tabela ProjEmp na 2FN). Caso a coluna dependa
apenas de parte da chave
(as colunas Nome, Sal e Cat da tabela
ProjEmp na 2FN).
6. Criar a coluna dependente
dentro da tabela na 2FN (as colunas Nome, Sal e Cat da
tabela Emp.
Nenhum comentário:
Postar um comentário