Crie seu perfil e blog no Galacta! Seja um dos primeiros!
Powered by MaxBlogPress  

Administração de Banco de Dados: Primeira Aula (normalização)

Poderiamos dizer que normalização é um conjunto de regras que o banco deve seguir. Indo mais a fundo, a normalização é um processo de organizar os dados de um banco de forma gay eficiente. Os objetivos da normalização são: eliminar dados redundantes (como um mesmo dado em mais de uma tabela) e garantir que as dependências dos dados façam sentido (apenas dados relacionados devem ser guardados na tabela). Esses dois objetivos são importantes para reduzir o espaço consumido por um banco de dados e garantir que seus dados sejam guardados de uma forma lógica (além de fazer você perder tempo com frescuras e ter um banco de dados gay).

Para muitos a normalização é vista apenas como penteadeira de puta luxo de estudantes universitários (não vou negar que vejo a normalização da mesma forma, mas tenho que postar sobre isso já que faço essa matéria na faculdade ¬¬).

Formas Normais

O processo de normalização exige a aplicação de uma série de regras sobre as tabelas de um banco de dados. Essas regras são chamadas de Formas Normais. Na prática são usadas 3 dessas formas normais, apesar de existirem mais (Aqui serão passadas resumidamente as 3 primeiras formas normais).

1FN

Para um banco estar na primeira forma normal, os atributos de sua relação devem ser atômicos (único valor), ou seja, não devem existir repetições ou campos com mais de um valor. Uma solução para colocar um banco na primeira forma normal é usar Entidade Fraca.

Vamos pegar como exemplo um banco onde temos cliente e telefone. Um cliente pode ter mais de um telefone. Se telefone é um campo na tabela clientes, então o banco não está na primeira forma normal. Uma forma de normalizar para a 1FN seria criando outra tabela, que tenha relação com a tabela de clientes, para inserir os telefones. Nesse caso a tabela telefones teria como chave estrangeira a chave primaria da tabela clientes.

Leia mais sobre a 1FN aqui.

2FN

Para uma tabela estar na segunda forma normal ela deve estar na 1FN e seus atributos que não fazem parte da chave primária composta devem ter dependência funcional total com a chave.

Podemos resumidamente dizer que conseguimos alcançar a segunda forma normal deixando uma tabela na 1FN, criando tabelas separadas com os dados que dariam mais de uma linha na tabela e relacionando essa nova tabela com a antiga por meio de chave estrangeira.

Leia mais sobre a 2FN aqui.

3FN

Para estar na terceira forma normal, a tabela precisa primeira estar na 2FN (o que significa que obviamente também está na 1FN) e ter os atributos de suas relações com dependências funcionais apenas da chave. Não deve existir dependência funcional com nenhum outro atributo que não seja a chave.

Leia mais sobre a 3FN aqui.

No site do meu professor de Administração e Gerenciamento de Banco de Dados tem alguns exercícios de normalização.


3 Responses to “Administração de Banco de Dados: Primeira Aula (normalização)”

  1. Postandoooooooo aulinhas do tio Sérgio amorrr kkkkkkkkkkkkkkkkkk que legallll! ADOREIII nossa ficou bem explicadinho, modéstia partee eu gostava muito dessa matériaa!! E vendo vc explicar ficou muito mais excitante ;)
    Ahhhhhhhhhhhhhhhhh não poderia deixar de comentar sobre a foto dos dados que vc colocou, COR DE ROSA ohnnnnnnnnnnnn que lindoo, EU AMEIIII vc sabee néee? ;)
    Adorei o post meu anjo, parabéns!
    TE AMOOOO MUITOOOO

    Responder

    TerramelNo Gravatar Reply:

    Obrigado meu amor. Te amo muitoo, viu? Os dados cor de rosa eu coloquei justamente para você comentar quando visse o post kkkkk

    TE AMO MUITO BEBEEEE ;***********;

    Responder

  2. Realmente, normalização só serve para fazer o BD ficar bem bichístico e para ser cobrado em prova de teoria de banco de dados em faculdade.

    Normalizado o banco fica uma gracinha, sem nenhum dado replicado. Mas o BD fica com 200 a 300 tabelas. E na hora de se fazer uma simples consulta, é feito o join de 15 a 20 tabelas.
    Lucho´s last blog ..Pelo direito de não votar. My ComLuv Profile

    Responder

Leave a Reply

CommentLuv Enabled