Sunteți pe pagina 1din 24

T É C N I C O D E I N F O R M ÁT I C A D E

G E S TÃO
SISTEMAS DE INFORMAÇÃO
11º ANO

1
INTRODUÇÃO AOS S.G.B.D.
• Base de Dados

Conjunto de dados que se relacionam


entre si, com um significado implícito.

Exemplo: bancos, agências de viagens,


hospitais, IRS, alunos

2
NORMALIZAÇÃO DE DADOS

• Normalização

Processo de estruturação dos dados que


caracterizam um sistema/entidade (ex:
Encomendas), que permite construir e
relacionar as tabelas da Base de Dados
correspondente evitando a redundância e
garantindo a inclusão de todos os campos
importantes.

3
NORMALIZAÇÃO DE DADOS

• Dados não Normalizados


• Etapas:

Analisar a informação e estruturá-la com vista


à elaboração de tabelas.

Procurar incluir todos os atributos


considerados importantes.

4
NORMALIZAÇÃO DE DADOS

• 1ª Forma Normal

 Todos os atributos estão definidos em domínios


que contêm apenas valores atómicos.

 Não há conjuntos de atributos repetidos para


um determinado género de características.

5
NORMALIZAÇÃO DE DADOS
• 1ª Forma Normal (Cont.)

Fazer:
 Converter os atributos não atómicos em
atributos atómicos, por forma a que não possa
incluir-se mais do que um valor em cada campo
de uma tabela.

 Eliminar atributos repetidos, passando a


considerá-los como elementos de uma nova
tabela.
6
NORMALIZAÇÃO DE DADOS
• 1ª Forma Normal (Cont.)

Exemplo: Normalização de uma nota de encomenda


Nota de Encomenda

Nº _____ Data: _____


Cliente
Código: _____ Nome: _____________________________________
Morada: ________________________________________________
Produto
Código Nome Preço Quantidade

Total
NORMALIZAÇÃO DE DADOS
• 1ª Forma Normal (Cont.)

Encomenda:
N_NotaEnc;
Data_Enc;
Cod_Cliente;
Nome_Cliente;
Morada_Cliente;
Cod_Produto;
Nome_Produto;
Preço_Produto;
Quantidade;
Total_Enc

8
NORMALIZAÇÃO DE DADOS
• 1ª Forma Normal (Cont.)

A entidade Encomenda não se encontra na 1FN


porque os atributos Cod_Produto; Preço_Produto;
Nome_Produto e Quantidade constituem um grupo
repetitivo.

9
NORMALIZAÇÃO DE DADOS

• 1ª Forma Normal (Cont.)

Sempre que na mesma entidade existe informação


referente a um novo produto é imprescindível repetir
o N_NotaEnc, Data_Enc; Cod_Cliente;
Nome_Cliente; Morada_Cliente e Total_enc.

10
NORMALIZAÇÃO DE DADOS
• 1ª Forma Normal (Cont.)

Passagem para a 1FN

Separar a entidade em duas, Encomenda e Linha_Enc

Encomenda: N_NotaEnc; Data_Enc; Cod_Cliente;


Nome_Cliente; Morada_Cliente; Total_Enc
Linha_Enc: N_NotaEnc; Cod_Produto;
Preço_Produto; Nome_Produto; Quantidade

11
NORMALIZAÇÃO DE DADOS

• 2ª Forma Normal

 A tabela já se encontra na 1FN.

 Todos os atributos não chave são


funcionalmente dependentes da chave na
sua totalidade e não apenas de parte da
chave.

12
NORMALIZAÇÃO DE DADOS

• 2ª Forma Normal (Cont.)

Fazer:
Identificar a chave de uma entidade:

 se a chave só tem um atributo, e a tabela já está na


1FN, então, também está na 2FN.

13
NORMALIZAÇÃO DE DADOS

• 2ª Forma Normal (Cont.)

 Se a chave é composta, analisam-se as


dependências dos outros atributos; se algum ou
alguns dos atributos dependem de uma parte da
chave, a tabela deverá ser decomposta, por forma
a que cada atributo dependa apenas da totalidade
da chave.

14
NORMALIZAÇÃO DE DADOS
• 2ª Forma Normal (Cont.)
Voltando ao Exemplo:

A chave da entidade Linha_Enc é constituída pelos


atributos N_NotaEnc e Cod_Produto.

Isto significa que:

N_NotaEnc e Cod_Produto => Preço_Produto


N_NotaEnc e Cod_Produto => Nome_Produto
N_NotaEnc e Cod_Produto => Quantidade

Técnicas de Gestão de Bases


15
de Dados
NORMALIZAÇÃO DE DADOS

• 2ª Forma Normal (Cont.)


Mas, se for utilizada só parte dessa chave,
nomeadamente o atributo Cod_Produto, também é
possível obter:

Cod_Produto => Preço_Produto


Cod_Produto => Nome_Produto

16
NORMALIZAÇÃO DE DADOS

• 2ª Forma Normal (Cont.)


Conclui-se que:

A entidade Linha_Enc não se encontra na 2FN, pois os


seus atributos Preço_Produto e Nome_Produto não
dependem da totalidade da chave (N_NotaEnc e
Cod_Produto), mas só de uma parte dessa chave
(Cod_Produto).

17
NORMALIZAÇÃO DE DADOS

• 2ª Forma Normal (Cont.)


Passagem para a 2FN
Separar a entidade Linha_Enc em duas entidades,
Linha_Enc e Produto.
Encomenda: N_NotaEnc; Data_Enc; Cod_Cliente;
Nome_Cliente; Morada_Cliente; Total_Enc
Linha_Enc: N_NotaEnc; Cod_Produto; Quantidade
Produto: Cod_Produto; Preço_Produto;
Nome_Produto
As três entidades anteriores estão na 2FN.
18
NORMALIZAÇÃO DE DADOS
• 3ª Forma Normal
 A tabela já se encontra na 2FN.

 Nenhum atributo não chave depende


funcionalmente de qualquer outro
atributo não chave.

19
NORMALIZAÇÃO DE DADOS
• 3ª Forma Normal (Cont.)
Fazer:
 Analisar todos os atributos não chave e procurar
dependências funcionais;

 Se existir algum conjunto de atributos que


tenham uma dependência funcional em relação a um
outro atributo, então, decompõe-se a tabela até que
não haja qualquer dependência funcional entre os
atributos não chave;

 Só podem existir dependências funcionais entre


atributos não chave e a chave 20
NORMALIZAÇÃO DE DADOS

•3ª Forma Normal (Cont.)


Voltando ao Exemplo:
Tanto a entidade Linha_Enc como a Produto estão na
3FN.
Linha_Enc não existe nenhum atributo não chave que permita
obter o atributo Quantidade, uma vez que este é o único
atributo não chave desta entidade.

Produto, não é possível obter o preço de um produto através


do seu nome, nem o nome do produto através do seu preço.

21
NORMALIZAÇÃO DE DADOS

•3ª Forma Normal (Cont.)


No entanto, o mesmo não se pode afirmar
relativamente à entidade Encomenda, porque:

Cod_Cliente => Nome_Cliente


Cod_Cliente => Morada_Cliente
embora o Cod_Cliente não seja chave.

22
NORMALIZAÇÃO DE DADOS

•3ª Forma Normal (Cont.)


Conclui-se que:

A entidade Encomenda não se encontra na 3FN, pois


os seus atributos Nome_Cliente e Morada_Cliente
não dependem da chave (N_NotaEnc), mas sim de
um outro atributo que não é chave (Cod_Cliente).

23
NORMALIZAÇÃO DE DADOS
•3ª Forma Normal (Cont.)
Passagem para a 3FN
Separar a entidade Encomenda em duas,
Encomenda e Cliente.
Encomenda(N_NotaEnc; Data_Enc; Cod_Cliente;
Total_Enc)
Cliente(Cod_Cliente; Nome_Cliente; Morada_Cliente)
Linha_Enc(N_NotaEnc; Cod_Produto; Quantidade)
Produto(Cod_Produto; Preço_Produto; Nome_Produto)
As quatro entidades estão agora na 3FN.

24

S-ar putea să vă placă și