Artigo no estilo: Curso

De que se trata o artigo

Este artigo irá apresentar práticas que devem ser consideradas ao se trabalhar com projeto de banco de dados. Para isso, o artigo aborda assuntos como normalização de dados, tabelas históricas e registro de eventos.


Em que situação o tema é útil

O tópico abordado neste artigo é útil para todos aqueles que trabalham com projeto de banco de dados em seu dia a dia. Isto por que ele aborda as formas normais deixando claro como elas se encaixam no processo de elaboração de um projeto de banco de dados. Além disso, complementa o conhecimento discutindo questões associadas às tabelas de histórico e registro de eventos.

Resumo DevMan

O projeto de um banco de dados é sempre uma tarefa desafiadora. Muitos são os caminhos que podem ser seguidos. Para apoiar a tomada de melhores decisões ao elaborar projetos de banco de dados, este artigos apresentará alguns tópicos interessantes da área. Inicialmente focaremos nossa discussão na normalização de dados. Em seguida, trataremos de questões como tabelas históricas e registro de eventos.

Esta série de dois artigos aborda o tema projeto de banco de dados. No primeiro artigo, foram discutidas algumas práticas gerais particularmente úteis. Nesta segunda parte será dada uma introdução acessível para o tema da normalização de banco de dados e para as cinco formas normais. Serão discutidos também outros usos possíveis para um banco de dados em um projeto, como um repositório de dados de configuração ou de registro de eventos.

Normalização

Nenhuma discussão sobre projeto de banco de dados relacional é completa sem uma seção sobre a normalização. Um esquema de banco de dados normalizado evita certas anomalias ao inserir, atualizar ou excluir dados e, portanto, ajuda a manter os dados consistentes no banco de dados.

No entanto, a ausência de anomalias é apenas o resultado concreto de um benefício mais profundo de normalização - a correta identificação e modelagem das entidades. As anomalias na inserção, atualização e excluir de dados que acabei de citar são as consequências da redundância introduzida pela separação inadequada ou insuficiente entre entidades distintas. O procedimento de normalização é, portanto, não apenas uma tarefa técnica a ser feita em princípio, mas pode contribuir ativamente para melhorar a compreensão do domínio do negócio.

Lamentavelmente, a normalização é tratada muitas vezes como uma formalidade proibitiva, e que sofre de uma terminologia especial, até mesmo não-intuitiva. Isso é lamentável, uma vez que o resultado de um procedimento de normalização muitas vezes simplesmente causa a reação de que tudo isso nada mais é do que apenas o senso comum. Veremos explicações de expressões que podem ser encontradas na literatura geral sobre o tema.

Visão geral

A normalização é um processo no qual um projeto inicial de banco de dados é transformado, ou decomposto, em um diferente, mas equivalente, projeto. O esquema resultante é equivalente ao original no sentido de que nenhuma informação é perdida quando se passa de um para o outro.

O procedimento de normalização é constituído por uma sequência de projeções - isto é, alguns atributos são extraídos a partir de uma tabela para formar um novo. Em outras palavras, as tabelas são divididas verticalmente. A decomposição é considerada sem perdas apenas se você pode restaurar a tabela original através da união de suas projeções.

Através destas decomposições sem perda é possível transformar um esquema original em uma resultante que satisfaz certas condições, conhecidas como as Formas Normais (FNs):

• A Primeira Forma Normal (1FN) aborda a estrutura de uma tabela isolada;

• A Segunda (2FN), Terceira (3FN) e Boyce-Codd (BCNF) Formas Normais abordam relacionamentos um-para-um e um-para-muitos;

• A Quarta (4NF) e Quinta (5NF) Formas Normais tratam os relacionamentos muitos-para-muitos.

Estas Formas Normais formam uma hierarquia de tal maneira que um esquema que esteja em uma Forma Normal mais elevada automaticamente preenche todos os critérios de todas as Formas Normais mais abaixo.

...
Quer ler esse conteúdo completo? Tenha acesso completo