Você está na página 1de 7

ANHANGUERA/UNIDERP

CURSO TCNICO DE INFORMTICA-PRONATEC


ELIARA PEREIRA FIGUEIREDO

BANCO DE DADOS
NORMALIZAO DE BANCO DE DADOS

Campo Grande/MS
Outubro de 2014

Eliara Pereira Figueiredo

Normalizao de Banco de Dados

Trabalho
sobre a Normalizao de Banco de
dados, definio e como fazer essa
normalizao.

Campo Grande/MS
Outubro de 2014

Normalizao de Banco de Dados


Normalizao um processo que se aplica regras a todas as tabelas do banco
de dados com o objetivo de evitar falhas no projeto, como redundncia de dados e
mistura de diferentes assuntos numa mesma tabela.
Ao projetar um banco de dados, se temos um modelo de entidades e
relacionamentos e a partir dele construirmos o modelo relacional seguindo as regras
de transformao corretamente, o modelo relacional resultante estar,
provavelmente, normalizado. Mas, nem sempre os modelos que nos deparamos so
implementados dessa forma e, quando isso acontece, o suporte ao banco de dados
dificultado. Nesses casos, se aplica as tcnicas de normalizao, aplicando as
regras a seguir, se garante um banco de dados mais integro ,sem redundncias e
sem inconsistncias.
A regra de ouro que devemos observar no projeto de um banco de dados
baseado no Modelo Relacional de Dados a de "no misturar assuntos em uma
mesma Tabela".
Na normalizao tem alguns objetivos que so algum deles: Os objetivos da
normalizao so muitos, entre eles destaco:

Minimizao de redundncias e inconsistncias;


Facilidade de manipulaes do banco de dados;
Ganho de desempenho no SGBD;
Facilidade de manuteno do sistema de Informao;
Estes so alguns, ainda existem outros.
Exemplos de banco de dados j normalizado:

Para
essa

normalizao so mais conhecidas 3 formas normais citadas a seguir :

1 Forma de Normalizao tambm conhecida como 1FN:


Todos os atributos de uma tabela devem ser atmicos, ou seja, a tabela no
deve conter grupos repetidos e nem atributos com mais de um valor. Para deixar
nesta forma normal, preciso identificar a chave primria da tabela, identificar a
coluna ou as colunas que tem dados repetidos e retira-las assim criar uma nova
tabela com a chave primria para armazenar o dado repetido e, por fim, criar uma
relao entre a tabela principal e a tabela secundria. Por exemplo, considere a
tabela Pessoas a seguir.
PESSOAS = {ID+ NOME + ENDERECO + TELEFONES}
Ela contm a chave primria ID e o atributo TELEFONES um atributo
multivalorado e, portanto, a tabela no est na 1FN. Para deix-la na 1FN, vamos
criar uma nova tabela chamada TELEFONES que conter PESSOA_ID como chave
estrangeira de PESSOAS e TELEFONE como o valor multivalorado que ser
armazenado.

PESSOAS = { ID + NOME + ENDERECO }


TELEFONES = { PESSOA_ID + TELEFONE }

2 Forma de Normalizao tambm conhecida como 2FN:


Antes de tudo, para estar na 2FN preciso estar na 1FN. Alm disso, todos os
atributos no chaves da tabela devem depender unicamente da chave primria (no
podendo depender apenas de parte dela). Para deixar na segunda forma normal,
preciso identificar as colunas que no so funcionalmente dependentes da chave
primria da tabela e, em seguida, remover essa coluna da tabela principal e criar
uma nova tabela com esses dados. Por exemplo, considere a tabela
ALUNOS_CURSOS a seguir.
ALUNOS_CURSOS = { ID_ALUNO + ID_CURSO + NOTA + DESCRICAO_CURSO }
Nessa tabela, o atributo DESCRICAO_CURSO depende apenas da chave
primria ID_CURSO. Dessa forma, a tabela no est na 2FN. Para tanto, cria-se
uma nova tabela chamada CURSOS que tem como chave primria ID_CURSO e
atributo DESCRICAO retirando, assim, o atributo DESCRICAO_CURSO da tabela
ALUNOS_CURSOS.
ALUNOS_CURSOS = {ID_ALUNO + ID_CURSO + NOTA}
CURSOS = {ID_CURSO + DESCRICAO}

3 Forma de Normalizao tambm conhecida como 3FN:


Para estar na 3FN, preciso estar na 2FN. Alm disso, os atributos no chave

de uma tabela devem ser mutuamente independentes e dependentes unicamente e


exclusivamente da chave primria (um atributo B funcionalmente dependente de A
se, e somente se, para cada valor de A s existe um valor de B). Para atingir essa
forma normal, preciso identificar as colunas que so funcionalmente dependentes
das outras colunas no chave e extra-las para outra tabela. Considere, como
exemplo, a tabela FUNCIONARIOS a seguir.

FUNCIONARIOS = { ID + NOME + ID_CARGO + DESCRICAO_CARGO }


O atributo DESCRICAO_CARGO depende exclusivamente de ID_CARGO
(atributo no chave) e, portanto, deve-se criar uma nova tabela com esses atributos.
Dessa forma, ficamos com as seguintes tabelas:
FUNCIONARIOS = { ID + NOME + ID_CARGO }
CARGOS = { ID_CARGO + DESCRICAO } PESSOAS = {ID+ NOME + ENDERECO +
TELEFONES}
Ela contm a chave primria ID e o atributo TELEFONES um atributo
multivalorado e, portanto, a tabela no est na 1FN. Para deix-la na 1FN, vamos
criar uma nova tabela chamada TELEFONES que conter PESSOA_ID como chave
estrangeira de PESSOAS e TELEFONE como o valor multivalorado que ser
armazenado.
PESSOAS = { ID + NOME + ENDERECO }
TELEFONES = { PESSOA_ID + TELEFONE }

Referncias

Normalizao de dados e as formas normais Disponvel em


http://www.luis.blog.br/normalizacao-de-dados-e-as-formas-normais.aspx .

Normalizao de dados - http://pt.wikipedia.org/wiki/Normaliza


%C3%A7%C3%A3o_de_dados.

Almeida Melo, Izabela Vanessa, Normalizao de Bancos de Dados Relacionais


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

Normalizao de Banco de Dados http://www.slidefinder.net/b/banco_dados_unidade_projeto_relacional/capitulo3/3088


6481.

Banco de Dados - http://support.microsoft.com/kb/283878/pt-br.

Normalizao em Banco de Dados http://www.blogdati.com.br/index.php/2010/03/normalizacao-em-banco-de-dados/.

Você também pode gostar