Você está na página 1de 4

CIÊNCIAS DA COMPUTAÇÃO

Base de Dados Avançadas I

TEMA: NORMALIZAÇÃO DA BASE DE DADOS


(2ª Forma Normal)

Turma:302
Integrantes do grupo:
1º- Gabriel Taty
2º- Josias Neves
O que é a normalização de uma base de dados?
A normalização de banco de dados é a aplicação de uma série de regras
para evitar a realização de consultas desnecessariamente complexas no futuro.
Essas regras buscam eliminar redundâncias e inconsistências de
dependências no projeto das tabelas criadas para organizar os bancos de
dados.

Para que serve a normalização da base de dados?


Os bancos de dados são normalizados para que você possa:
- Evitar redundância de dados;
- Proteger a integridade dos dados;
- Evitar problemas de atualização dos dados nas tabelas

Primeira Forma Normal (1FN)


É necessário seguir uma série de passos para cumprir esse tipo de
normalização. Quando concluímos esse processo, podemos dizer que nossa
tabela está na Primeira Forma Normal.

São eles:
1. Remova grupos repetidos de tabelas individuais;
2. Crie uma tabela separada para cada grupo de dados relacionados;
3. Identifique cada grupo de dados relacionados com uma chave primária.
Para identificar se o fizemos da forma correta, devemos considerar os
seguintes aspetos:

 Todos os atributos devem ser atômicos. Um atributo é atômico se os


elementos do domínio são indivisíveis, mínimos;
 A tabela deve conter uma chave primária exclusiva;
 A chave primária não deve conter atributos nulos;
 Não deve haver variação no número de colunas;
 Campos não-chave devem ser identificados pela chave (dependência
funcional);
 Deve haver uma independência da ordem das linhas e das colunas,
assim, caso os dados mudem de ordem, seus significados não devem
mudar;

Prática da 1ª FN.

Todos os atributos da tabela devem ser atômicos, ou seeja, a tabela não


deve conter geupos de repetidos e nem atributos com maisde um valor.
Exemplo a baixo.

Pessoa
Cha idPessoa: INTEGER
nomePessoa: VARCHAR
enderecoPeessoa:VARCHAR
telefonePessoa: VARCHAR
idPessoa nomePessoa enderecoPeessoa telefonePessoa
1 Gabrie Rua 28 de Maio 923-437546
2 Josy Rua Casseque 222-97543/922-053472

Como resolver isso?

Pessoa Pessoa
Cha idPessoa: INTEGER Cha idTelefone: INTEGER
nomePessoa: VARCHAR Pessoa_idPessoa : INTEGER (FK)
enderecoPeessoa: VARCHAR descricaoTelefone: VARCHAR
numeroTelefone: VARCHAR
Telefone_FKndex1
Pessoa_idPessoa

Todos os registos estão atômicos e não tem repetição dentro dos campos.

idPessoa nomePessoa enderecoPessoa


2 Josy Rua Casseque

idTelefone Pessoa_idPessoa descricãoTelefone numeroTelefone


1 2 Fixo 222-97543
2 2 Móvel 922-053472

Segunda Forma Normal (2FN)

Nesta fase, o passo-a-passo a ser seguido é

1. Conclua a 1ª Forma Normal;


2. Crie tabelas separadas para os grupos de dados que se aplicam a vários
registros;
3. Relacione essas tabelas usando uma chave estrangeira.
Um banco de dados está na Segunda Forma Normal se ele cumprir as regras
da Primeira Forma Normal e se seus atributos não primários dependerem
totalmente da chave primária.

Em outras palavras, não deve haver dependências parciais.


Prática da 2ª FN.

Estar na 1ª FN e todos os atributos não chave, devem depender unicamente da


chave primária da tabela. Exemplo a baixo:

Aluno
Cha idAluno: INTEGER
nomeAluno: VARCHAR
idadeAluno: INTEGER
codigoCurso: INTEGER
nomeCurso: VARCHAR

O que acontece ao registar:

idAluno nomeAluno idadeAluno codigoCurso nomeCurso


1 Josy 14 3 computacao
2 Gabriel 12 3 computacao
3 Faria 11 3 computacao

Como resolver Isso?

Aluno Curso
Cha idAluno: INTEGER Cha idCurso: INTEGER
Curso_idCurso : INTEGER (FK) nomeCurso: VARCHAR
nomeAluno: VARCHAR
idadeAluno: VARCHAR Rel 01

Aluno_FKIndex1
Curso_idCurso
Assim teremos a tabela do Curso com o código e a descrição

idCurso nomeCurso
3 computacao

E a tabela do Aluno totalmente idependente da tabela do curso

idAluno Curso_idCurso nomeAluno idadeAluno


1 3 Josy 14
2 3 Gabriel 12
3 3 Farias 11

Você também pode gostar