Sei sulla pagina 1di 10

NORMALIZAO

NORMALIZAO
Conceito introduzido em 1970 por E. F. Codd (1FN)
Processo matemtico formal fundamentado na teoria dos conjuntos

Aplica uma srie de regras sobre as tabelas de um banco de dados para verificar se estas foram corretamente projetadas

OBJETIVOS PRINCIPAIS
Garantir a integridade dos dados, evitando que informaes sem sentido sejam inseridas Organizar e dividir as tabelas da forma mais eficiente possvel, diminuindo a redundncia e permitindo a evoluo do banco de dados

FORMAS NORMAIS:
1FN 1 Forma Normal 2FN 2 Forma Normal 3FN 3 Forma Normal FNBC Forma Normal de Boyce e Codd 4FN 4 Forma Normal 5FN 5 Forma Normal

1FN Primeira Forma Normal:


Os atributos da tabela no contm grupos de repetio (tabelas aninhadas). A tabela a seguir NO est na 1FN:
Projeto CodProj 11 12 DescProj Alfa Beta CodFunc 1001 1004 1003 NomeFunc Antonio Daniela Claudio CargoFunc Analista Sr Analista Pl Analista Sr SalFunc 1800 1200 1800 DtInicio 02/01/2005 05/01/2005 10/02/2005

Passando para a 1FN:


ProjFunc CodProj 11 11 12 CodFunc 1001 1004 1003 NomeFunc Antonio Daniela Claudio CargoFunc Analista Sr Analista Pl Analista Sr SalFunc 1800 1200 1800 DtInicio 02/01/2005 05/01/2005 10/02/2005 Projeto CodProj DescProj

11
12

Alfa
Beta

2FN Segunda Forma Normal:


Condio: Chave Primria (PK) composta por mais de uma coluna. Todas as colunas que no fazem parte da PK dependem de todas as colunas que compem a PK. A tabela a seguir NO est na 2FN:
ProjFunc CodProj 11 11 12 CodFunc 1001 1004 1003 NomeFunc Antonio Daniela Claudio CargoFunc Analista Sr Analista Pl Analista Sr SalFunc 1800 1200 1800 DtInicio 02/01/2005 05/01/2005 10/02/2005

Passando para a 2FN:


Funcionario CodFunc 1001 1004 1003 NomeFunc Antonio Daniela Claudio CargoFunc Analista Sr Analista Pl Analista Sr SalFunc 1800 1200 1800 CodProj 11 ProjFunc CodFunc 1001 DtInicio 02/01/2005

11
12

1004
1003

05/01/2005
10/02/2005

3FN Terceira Forma Normal:


No h dependncias funcionais transitivas. Cada coluna no PK depende DIRETAMENTE da PK. A tabela a seguir NO est na 3FN:
Funcionario CodFunc 1001 1004 1003 NomeFunc Antonio Daniela Claudio CargoFunc Analista Sr Analista Pl Analista Sr SalFunc 1800 1200 1800

CodFunc CargoFunc SalFunc

Dependncia Funcional Transitiva

Passando para a 3FN:


Funcionario CodFunc 1001 1004 1003 NomeFunc Antonio Daniela Claudio CargoFunc Analista Sr Analista Pl Analista Sr CargoSalario CargoFunc Analista Sr Analista Pl SalFunc 1800 1200

FNBC F N Boyce e Codd:


Condio: Aplica-se a FNBC quando:
1. Encontramos duas ou mais chaves candidatas 2. As chaves candidatas apresentam mais de um atributo (so compostas) 3. Todas as chaves candidatas tm um atributo em comum Exemplo:
Vamos assumir que um professor est associado a mais de uma escola e uma sala.

Aluno(NomeAluno,EndAluno,NomeEscola,NrSala,NomeProf) Chaves Candidatas: NomeAluno + EndAluno NomeAluno + NrSala NomeAluno + NomeProf Neste exemplo: 1. Encontramos trs chaves candidatas 2. Todas so compostas 3. Todas compartilham um mesmo atributo

Aplicando a FNBC: A tabela Aluno ser dividida em duas tabelas: uma que contm todos os atributos que descrevem o aluno e outra que contm os atributos que designam um professor em uma determinada escola e nmero de sala.

Aluno(NomeAluno,EndAluno,NomeEscola,NrSala) Professor(NomeEscola,NrSala,NomeProf)

4FN Quarta Forma Normal:


Uma tabela no deve possuir mais de uma dependncia multivalorada. A tabela a seguir NO est na 4FN:
ProjFuncEquip CodProj CodFunc CodEquip 11 1001 A10 11 1002 A10 11 1001 A20 11 1002 A20 12 1001 A10 12 1001 A20

CodProj CodFunc

CodProj CodEquip

Passando para a 4FN:


ProjFunc CodProj CodFunc 11 1001 11 1002 12 1001 ProjEquip CodProj CodEquip 11 A10 11 A20 12 A10 12 A20

5FN Quinta Forma Normal:


Condio: Relacionamentos multiplos (ternrios ... n-rios). 1 passo: Decompor a tabela atravs da operao de projeo. 2 passo: Reconstruir a tabela atravs da juno. A tabela est na 5FN quando o seu contedo NO puder ser reconstrudo Atravs da juno das tabelas secundrias. NO est na 5FN:
Mat 10 10 20 10 MatPedReq Ped 1001 1002 1001 1001 Req 1 2 2 2

Est na 5FN:
MatPed Mat Ped 10 1001 10 1002 20 1001 PedReq Ped Req 1001 1 1002 2 1001 2 MatReq Mat Req 10 1 10 2 20 2

Potrebbero piacerti anche