BD I – Normalização (1FN, 2FN e 3FN)

Normalização é a técnica que objetiva eliminar redundâncias de dados de arquivos/documentos. A motivação de seu uso deve-se a sistemas raramente documentados, necessidade de modelo E-R, manutenção, migração para outro tipo de banco de dados e integração com outros banco de dados.

Resumindo:

  • Normalização: Processo que transforma um esquema de dados qualquer em um modelo relacional.

Links externos:

http://www.dsc.ufcg.edu.br/~pet/jornal/maio2011/materias/recapitulando.html

Modelo de documento para normalizar

 Tabela Não Normalizada – ÑN

Uma tabela é dita não-normalizada quando a mesma possui tabelas aninhadas (embutidas).

Tabela não-normalizada = tabela que contém outras tabelas aninhadas ou grupos repetidos.

Representação da figura exemplo em lógico textual.

Proj ( CodProj,tipo,descr, ( CodEmp,Nome,Cat,Sal,DataIni,TempoAl ))

Notem o parênteses aninhados (embutidos) dentro de Proj.

Tabela na Primeira Forma Normal – 1FN

Uma tabela se encontra na primeira forma normal quando 1FN quando a mesma não contem tabelas aninhadas.

Primeira forma normal = quando ela não contém tabelas aninhadas ou grupos repetidos.

Representação da tabela na 1FN com decomposição de tabelas.

Proj ( CodProj, tipo, descr)

ProjeEmp( CodPro, CodEmp, Nome, Cat,Sal, DataIni, TempoAl )

Notar que a chave da tabela Proj (CodPro)  agora faz parte da chave primária da tabela ProjEmp no caso uma chave concatenada.

Dependência Funcional

Para entender as próximas formas normais deve-se estudar o conceito de depêndencia funcional. Em poucas palavras é quando uma coluna determina outra e a outra depende funcionalmente da primeira, na figura abaixo temos os exemplos.

 

Segunda Forma Normal – 2FN

Dependência Funcional Parcial

A passagem a segunda forma normal deve-se eliminar um tipo de redundância de dados. Uma tabela encontra-se na segunda forma normal 2FN quando cada coluna não chave depende da chave primária completa, ou seja deve-se eliminar as dependências funcionais parciais.

Segunda forma normal =  quando além de estar na 1FN também não contém dependências parciais.

Na figura o exemplo de uma dependência parcial.

Agora a passagem a 2FN

Proj ( CodProj, tipo, descr)

ProjeEmp( CodPro, CodEmp, DataIni, TempoAl )

Emp(CodEmp,Nome,Cat,Sal)

Notar que agora nesse tipo de dependência não há herança da chave primaria na outra tabela.

Terceira Forma Normal – 3FN

Para a passagem a terceira forma normal deve-se eliminar outro tipo de redundância de dados. Uma tabela encontra-se na terceira forma normal 3FN quando uma coluna não-chave primária depende funcionalmente de outra coluna não chave primária.

Terceira forma normal = quando além de estar na 2FN não contém dependências transitivas.

Proj ( CodProj, tipo, descr)

ProjeEmp ( CodPro, CodEmp, DataIni, TempoAl )

Emp (CodEmp,Nome,Cat)

Categoria (Cat,Sal)

F0ntes:

HEUSER, Carlos A. Projeto de banco de dados. 4.Ed.Porto Alegre: Sagra Luzatto 1998.

[1] http://www.dsc.ufcg.edu.br/~pet/jornal/maio2011/materias/recapitulando.html. Último acesso em 07/06/2016.

Esse post foi publicado em BD I - Banco de Dados I e marcado , , , , , . Guardar link permanente.

Uma resposta para BD I – Normalização (1FN, 2FN e 3FN)

  1. Eduardo xavier disse:

    Ótimo conteúdo , bem demostrativo.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s