Você está na página 1de 4

NORMALIZAO DE TABELAS

O objetivo da normalizao evitar os problemas provocados por falhas no projeto do Banco


de Dados, bem como eliminar a mistura de assuntos e as correspondentes redundncias de
dados. A normalizao de tabelas utilizadas para tentar detectar erros no projeto das tabelas
e atributos de cada tabela e corrigir estes erros, antes da criao e utilizao do banco de
dados. bem mais fcil (e barato) corrigir os erros na fase de projeto do que depois, quando o
banco de dados j est em uso.

Uma Regra de Ouro que devemos observar quando do projeto de Banco de Dados a de
no misturar assuntos em uma mesma Tabela, conforme j descrito anteriormente.

Por exemplo, na tabela Clientes devemos colocar somente campos relacionados com o
assunto Clientes. No devemos misturar campos relacionados com outros assuntos, tais como
Pedidos, Produtos, etc. Essa mistura de assuntos em uma mesma tabela acaba por gerar
repetio desnecessria dos dados bem como inconsistncia dos dados.

O processo de Normalizao aplica uma srie de regras sobre as tabelas de um Banco de


Dados, para verificar se estas esto corretamente projetadas. Embora existam cinco Formas
Normais (ou regras de Normalizao), na prtica usamos um conjunto de trs Formas Normais.

Freqentemente, aps a aplicao das regras de Normalizao, algumas tabelas acabam


sendo divididas em duas ou mais, o que no final gera um nmero maior de tabelas do que o
nmero de tabelas originalmente projetado. Este processo causa a simplificao dos atributos
de uma tabela, colaborando significativamente para a estabilidade do projeto do banco de
dados, reduzindo-se as necessidades de manuteno e alteraes, aps o banco ter sido
colocado em produo.

Vamos estudar e entender o processo de Normalizao atravs de exemplos prticos.

PRIMEIRA FORMA NORMAL

Regra: Uma tabela est na Primeira Forma Normal quando seus atributos no contm Grupos
de Repetio.

Por isso dissemos que uma Tabela que possui Grupos de Repetio no est na Primeira
Forma Normal. Considere a Figura 1.7:
Figura 1.7 Uma tabela qu
ue no est na Primeira Forma Normal.

Podeemos notar que uma tabela t com esta estruttura apresen nta diversoss problemas s. Por
exemmplo, se um casal
c tiver mais
m do que um
u filho, tera
amos que diggitar o Nome e do Pai e da
a Me
diverssas vezes, tantas
t quantos forem os filhos. Isso forma um Grupo
G de Reepetio. Podde ser
que, por erro de digitao, o nome dos pais
p no apaarea exatam
mente igual ttodas as vez zes, o
que pode
p acarrettar problemaas na hora de
d fazer pesq quisas ou em
mitir relatrio
os. Este probblema
ocorrre porque misturamos asssuntos em uma mesma tabela. Co olocamos ass informae es dos
Pais e dos Filhos em uma me esma tabela.

A soluo para este


e a simples: criamos um
problema ma tabela sep parada para a Informa
o dos
Pais e relacionammos a tabela
a Pais com a tabela Filh
hos atravs de
d um relaciionamento do
d tipo
Um para
p Vrios, ou seja, Um
m casal pode
e ter Vrios filhos. Esta soluo in
ndicada na Figura
F
1.8:

F
Figura 1.8 As tabelas Pais e Filhos esto
o na Primeira Forma Norma
al.

As duuas tabelas resultantes da aplicaoo da Primeirra Forma No ormal, Pais e Filhos, estto na
Primeeira Forma Normal;
N a tabela originall, a qual mis
sturava inform
maes de PPais e Filhoss, no
est na Primeira Forma Norm mal.

SEG
GUNDA FORMA
O NORMAL
O

Pode
emos aplicar a Segunda Forma Norm
mal quando tivermos um
ma Chave Prrimria Comp
posta.
Neste
e caso, deveemos observvar se todos os campos,, que no fa azem parte dda Chave primria
compposta, depenndem de toddos os campos que compem a Chave C Primria compostta. Se
algum
m campo que no faz pa arte da chavve primria composta
c de
epender som mente de parte da
Chavve Primria composta,
c en
nto este cam
mpo deve pe ertencer a outra tabela.

Obse
erve o exemp
plo indicado na Figura 1.9
9:

Figura 1.9 Uma tabela qu


ue no est na Segunda Fo
orma Normal.

A Chhave Primriaa Compostaa formada pela combin nao dos campos


c Nm
meroDaMatrc
cula e
CdiggoDoCurso. O campo o Avaliao depende tanto do CdigoDoCurso quantto do
Nme eroDaMatrcula (cada aluno repre esentado po ma nota em cada
or sua matrccula, tem um
discip
plina repre
esentada peelo campo CdigoDocur
C rso), porm o campo D DescrioDoC
Curso,
depende apenass do Cdig goDoCurso (a descri o do curso o no tem relao co om o
Nme eroDaMatrcula). Com isso,
i temos um campo que no faz f a Chave Primria
parte da
comp posta e depeende apenass de um doss campos qu ue compem m a Chave Primria compposta.
Assimm podemos dizer
d que estta tabela no
o est na Seggunda Formaa Normal.

A ressoluo para
a este probblema tamb m simple
es: dividimoss a tabela, que no es st na
Segu
unda Forma Normal, em duas outrass tabelas, co onforme indicado pela F Figura 1.10, sendo
s
que as
a duas tabe n Segunda Forma Norm
elas resultanttes estaro na mal.

Figura 1.10 Duas tabelass que esto na


a Segunda Fo
orma Normal.

Nota: A distino
o entre a Seg
gunda e a T
Terceira Form
ma Normal, que
q veremoss no prximo
o item,
as vezes confusa. A Segunda Forma
muita F Norm ada ocorrncia de Chaves
mal est liga
Prim
rias Compo ostas.
TER
RCEIRA FORMA NORMAL
O

Na definio doss campos de e uma tabela


a podem oc correr casos em que um m campo noo seja
dependente direttamente da Chave Prim mria, ou de parte dela, mas sim de ependente de
d um
outro bela, campo este que no
o campo consstante na tab o seja a Cha
ave Primria.

Quan
ndo isto ocoorre, dizemos que a tab
bela no est na Terce
eira Forma N
Normal, con
nforme
exem
mplo indicado
o pela Figura
a 1.11:

Figura 1.11 Uma tabela que


q no est na
n Terceira Fo
orma Normal.

Obseerve que o ca
ampo DescrioDoCargo o depende ap
penas do campo CdigoDoCCargo, o qual
no faz
f parte da Chave
C Prim
ria. Por isso
o dizemos qu
ue esta tabella no est n
na Terceira Forma
F
Norm
mal.

A soluo para esste caso tam


mbm simpples. Novameente basta dividir a tabela
a em duas outras,
o
orme indicad
confo do pela Figuura 1.12. Ass duas tabelas resultanttes esto na a Terceira Forma
F
Norm
mal.

Figura 1.12
2 Duas tabela
as que esto na
n Terceira Fo
orma Normal.

Nota: Com isso podemos


p co
oncluir que, ccomo resulta
ado do proce
esso de Norm
malizao, irremos
obterr um nmero
o maior de tabelas
t do que
q o existeente antes do
d processo de normalizzao,
pormm sem problemas de re
edundncia e inconsistn ncia dos dad
dos, ou com
m estes problemas
minim
mizados.

Você também pode gostar