Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Normalização de Dados
Apresentação
A normalização de dados permite uma melhor performance e relacionamento de dados dentro do 
próprio sistema de gerenciamento de banco de dados.
Nesta Unidade de Aprendizagem, você vai estudar como são feitas as tabelas nas formas normais, 
garantindo que estejam aderentes às regras, como fazer a normalização de uma tabela, desde o 
início, passando pelas três formas normais (1FN, 2FN e 3FN), identificando a mudança que ocorre 
em cada uma delas.
Bons estudos.
Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:
Identificar as dependências funcionais.•
Reconhecer as formas normais (1FN, 2FN, 3FN, e FN Boyce-Codd).•
Relacionar os processos de normalização.•
Laiane
Laiane
Desafio
A empresa na qual você trabalha atualmente é desenvolvedora de softwares e foi contratada para 
melhorar o sistema de uma locadora. Este é defasado e não apresenta boa performance para os 
clientes.
Assim, foi levantada a necessidade de modificar a estrutura do banco de dados, passando a planilha 
de catálogo de filmes, a seguir, para a primeira forma normal.
Título (filme) Nome (diretor)
Ano 
(lançamento)
Tipo 
(mídia)
Duração
Titanic James Cameron 1995
VHS 
DVD
200 min.
Avatar James Cameron 2009 DVD 180 min.
O Senhor dos Anéis: 
A Companhia do 
Anel
Peter Jackson 2002
VHS 
DVD
300 min.
Vingadores, Ultimato
Anthony Russo, 
Joe Russo
2019 DVD 180 min.
 
Neste Desafio, seu papel é segmentá-la, de forma que fique aderente às regras da primeira forma 
normal. Lembre-se de identificar os atributos- chave. Além de apresentar a solução, você deve 
explicar por que é adequada, neste caso, a utilização da normalização na primeira forma normal e 
como isso deve ser realizado.
Laiane
Infográfico
O principal objetivo da normalização de dados é evitar anomalias de inserção, deleção e 
atualização. Para adequar o banco de dados, é necessário avaliá-lo com base em cinco regras, que 
recebem o nome de formas normais.
Acompanhe, no Infográfico a seguir, as características principais de cada forma normal, bem como 
as da forma normal de Boyce-Codd. 
 
Confira.
Laiane
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para 
acessar.
https://statics-marketplace.plataforma.grupoa.education/sagah/c47cf5e4-f163-44b4-b9ac-bbf973c641cf/46743dab-133d-44ee-94b4-0cdae2ecfd55.jpg
Conteúdo do livro
A normalização dos dados em um sistema de banco de dados é importante para garantir a não 
duplicidade de informações. Ela serve como busca pela diminuição de complexidade e maximização 
de performance dentro do Sistema de Gerenciamento de Banco de Dados (SGBDs).
No capítulo Normalização de dados, da obra Modelagem e Desenvolvimento de Banco de Dados, base 
teórica desta Unidade de Aprendizagem, você vai estudar o que são as dependências funcionais, as 
formas normais e sua classificação. 
 
Boa leitura.
Laiane
MODELAGEM E 
DESENVOLVIMENTO 
DE BANCO DE DADOS
Fabrício Felipe Meleto Barboza 
Normalização de dados
Objetivos de aprendizagem
Ao final deste texto, você deve apresentar os seguintes aprendizados:
 � Identificar as dependências funcionais.
 � Reconhecer as formas normais (1FN, 2FN, 3FN, e FN Boyce-Codd).
 � Relacionar os processos de normalização.
Introdução
A normalização de dados permite um melhor relacionamento e perfor-
mance de dados dentro do próprio Sistema de Gerenciamento de Banco 
de Dados (SGBD).
Neste capítulo, você vai estudar como são feitas as tabelas nas formas 
normais, garantindo que estejam aderentes às regras, e vai ver como 
fazer a normalização de uma tabela, desde o início, passando pelas três 
formas normais (1FN, 2FN e 3FN) e identificando a mudança que ocorre 
em cada uma delas.
Dependências funcionais
Você está administrando um banco de dados grandioso, com várias tabelas 
e databases. Ao inserir, excluir ou editar alguma informação do cadastro 
dos clientes, você precisaria manipular os dados da tabela “clientes”, que 
concentra essas informações. Bem rápido, fácil e estruturado, correto? Agora, 
pense que esse sistema utiliza a tabela “clientes” para montar o relatório 
gerencial dos cadastros, utiliza a tabela “clientes_vendas” para o cadastro 
dos mesmos dados – mas para referenciar uma venda – e, ainda, a tabela 
“clientes_aberto” para esses atributos serem exibidos na tela de clientes 
com contas em aberto.
Laiane
Laiane
Laiane
Dessa forma, para editar o campo telefone de um cliente, você precisaria 
manipular as tabelas “clientes”, “clientes_vendas” e “clientes_aberto”. O 
trabalho foi triplicado – e isso para qualquer edição, inserção ou deleção! 
Em vez de a informação ser centralizada e única, ela fica em duplicidade e 
correndo grande risco de não estar igual nas tabelas. Assim, a redundância 
de dados, salvo em caso controlado pelo próprio SGBD, como em uma 
replicação, por exemplo, não deve ser feita.
Segundo Macêdo (2012, documento on-line), 
a redundância consiste no armazenamento de uma mesma informação 
em locais diferentes, provocando inconsistências. Em um banco de da-
dos, as informações só se encontram armazenadas em um único local, 
não existindo duplicação descontrolada dos dados. Quando existem 
replicações dos dados, elas são decorrentes do processo de armaze-
nagem típica do ambiente cliente-servidor, totalmente sob controle 
do banco de dados.
Outra técnica, utilizada em menor escala, para quando a replicação 
de dados é necessária, seria a utilização de valores nulos (NULL) em 
campos não importantes para aquela cópia de dados. Quando é possível 
que o atributo receba esse valor, isso significa que esse atributo não possui 
nenhum dado atrelado a ele. Também é possível dizer que esse atributo, 
quando recebe a entrada NULL, diz que os dados estão ausentes naquele 
setor. Mesmo assim, recomenda-se cautela no uso de NULL para criar 
uma replicação dos valores.
Identificando as dependências funcionais
As tabelas de bancos de dados devem seguir uma regra para que fiquem livres 
de dados incorretos ou duplicados. Para garantir essa regra, foram definidas 
as formas normais, que, em teoria, todas as tabelas devem obedecer. Além 
disso, para que as formas normais sejam respeitadas, é necessário entender 
as dependências funcionais.
Normalização de dados2
Laiane
Laiane
Laiane
Laiane
Laiane
Laiane
Laiane
Laiane
Uma dependência funcional ocorre quando um valor A depende de um 
valor B, ou seja, uma coluna depende de outra coluna da mesma tabela.
As dependências funcionais se dividem em três: dependências funcio-
nais parciais, dependências funcionais totais e dependências funcionais 
transitivas.
Dependência funcional total
Quando houver uma chave primária concatenada, isto é, duas ou mais colunas 
são a chave primária de uma tabela, as demais colunas dependerão exclusiva-
mente dessa ligação para que possam ser inseridas corretamente.
Exemplo: 
 � Tabela ItemVenda
 ■ CodVenda PRIMARY KEY
 ■ CodProduto PRIMARY KEY
 ■ Qtd
Repare que a coluna Qtd irá depender totalmente da chave primária con-
catenada entre CodVenda e CodProduto.
Dependência funcional parcial
Ocorre quando um item da tabela depende de uma parte da chave primária 
concatenada da tabela, e não da chave toda.
Exemplo:
 � Tabela ItemVenda
 ■ CodVenda PRIMARY KEY
 ■ CodProduto PRIMARY KEY
 ■ Qtd
 ■ PrecoProduto
A coluna PrecoProduto depende do valor da coluna CodProduto, que faz 
parte da chave primária da tabela ItemVenda. Portanto, PrecoProduto depende 
parcialmente da chave primária concatenada da tabela.
3Normalização de dados
Laiane
Laiane
Laiane
Laiane
Laiane
Dependência funcional transitiva
Acontece quando uma coluna da tabela depende de outra coluna da tabela 
que não é chave dessa tabela.
Exemplo:
 � Tabela ItemVenda
 ■ CodVenda PRIMARY KEY
 ■ CodProduto PRIMARY KEY
 ■ Qtd
 ■ PrecoProduto
 ■ TotalParcial
A coluna TotalParcial depende do resultado da multiplicação das colunas 
Qtd por PrecoProduto, e essas colunas não são chave da tabela.Reconhecendo as formas normais (1FN, 2FN, 
3FN, e FN Boyce-Codd)
Para o estudo das formas normais, utilizaremos como base a planilha a 
seguir (Quadro 1), adaptada do exemplo de Massan (2007), a qual devemos 
transformar em tabelas para compor o sistema que será desenvolvido.
Normalização de dados4
Laiane
Laiane
Co
dP
ro
j
Ti
po
D
es
cr
ic
ao
Empregado
Co
dE
m
pr
eg
ad
o
N
om
e
Ca
te
go
ri
a
Sa
la
ri
o
D
at
aI
ni
ci
o
Te
m
po
A
lo
ca
do
PJ
55
4
D
es
en
vo
lv
im
en
to
Si
st
em
a 
de
 e
st
oq
ue 1 João A1 6 01/01/2019 12
2 Maria A1 6 01/01/2019 12
7 José B2 4 01/01/2019 12
8 Angelo B3 2 30/03/2019 9
9 Márcia A2 5 15/04/2019 6
10 Pedro A2 5 15/04/2019 6
PJ
52
9
D
es
en
vo
lv
im
en
to
Si
st
em
a 
de
 c
om
pr
a 1 João A1 6 01/01/2020 8
2 Maria A1 6 01/01/2020 3
7 José B2 4 01/01/2020 6
8 Angelo B3 2 01/01/2020 5
9 Márcia A2 5 15/11/2019 5
10 Pedro A2 5 15/11/2019 8
PF
38
Co
rr
eç
ão
Pr
ob
le
m
a 
no
 u
pl
oa
d 3 Augusto A1 6 01/01/2018 3
4 Joana B2 4 01/01/2018 1
5 Alex B3 2 01/01/2018 5
6 Sophie B3 2 01/01/2018 2
7 José A2 4 01/01/2020 6
8 Angelo B3 2 01/01/2020 5
Quadro 1. Planilha com dados para estudo das formas normais
1FN: primeira forma normal
A primeira forma normal comunica que a tabela estará na primeira forma 
normal se não tiver tabelas aninhadas uma dentro da outra. Conforme você 
pode reparar, podemos dividir a planilha de exemplo em mais de uma tabela, 
pois ela contempla exatamente um aninhamento de tabelas.
Para respeitar essa forma normal, podemos criar as tabelas Projeto (Qua-
dro 2) e AlocacaoEmpregado (Quadro 3), conforme segue. As colunas em 
destaque são chave.
5Normalização de dados
Laiane
Laiane
Laiane
Laiane
CodProj Tipo Descricao
PJ554 Desenvolvimento Sistema de estoque
PJ529 Desenvolvimento Sistema de compra
PF380 Correção Problema no upload
Tabela projeto
Co
dP
ro
j
Co
dE
m
pr
eg
ad
o
N
om
e
Ca
te
go
ria
Sa
la
rio
D
at
aI
ni
ci
o
Te
m
po
Al
oc
ad
o
J554 1 João A1 6 01/01/2019 12
PJ554 2 Maria A1 6 01/01/2019 12
PJ554 7 José B2 4 01/01/2019 12
PJ554 8 Angelo B3 2 30/03/2019 9
PJ554 9 Márcia A2 5 15/04/2019 6
PJ554 10 Pedro A2 5 15/04/2019 6
PJ529 1 João A1 6 01/01/2020 8
PJ529 2 Maria A1 6 01/01/2020 3
PJ529 7 José B2 4 01/01/2020 6
PJ529 8 Angelo B3 2 01/01/2020 5
PJ529 9 Márcia A2 5 15/11/2019 5
PJ529 10 Pedro A2 5 15/11/2019 8
PF380 3 Augusto A1 6 01/01/2018 3
PF380 4 Joana B2 4 01/01/2018 1
PF380 5 Alex B3 2 01/01/2018 5
PF380 6 Sophie B3 2 01/01/2018 2
PF380 7 José A2 4 01/01/2020 6
PF380 8 Angelo B3 2 01/01/2020 5
Tabela AlocacaoEmpregado
Normalização de dados6
2FN: segunda forma normal
A regra de segunda forma normal diz que a tabela deve estar na primeira 
forma normal e não possui dependências parciais.
Segundo Siqueira (2018, documento on-line):
[...] quando uma coluna ou conjunto de colunas A depende de outra 
coluna B que faz parte da chave primária concatenada, dizemos que há 
uma dependência funcional parcial A em relação a B. Para cada valor 
da coluna B, existe um valor associado para a coluna A.
Assim, a tabela AlocacaoEmpregado deve ser segmentada em uma outra 
tabela, ou seja, uma terceira tabela: “empregado”. Observe nos Quadros 
4 e 5.
CodEmpregado Nome Categoria Salario
1 João A1 6
2 Maria A1 6
3 Augusto A1 6
4 Joana B2 4
5 Alex B3 2
6 Sophie B3 2
7 José B2 4
8 Angelo B3 2
9 Márcia A2 5
10 Pedro A2 5
Quadro 4. Exemplo da tabela “AlocacaoEmpregado”
7Normalização de dados
Laiane
Laiane
Laiane
CodProj CodEmpregado DataInicio TempoAlocado
PJ554 1 01/01/2019 12
PJ554 2 01/01/2019 12
PJ554 7 01/01/2019 12
PJ554 8 30/03/2019 9
PJ554 9 15/04/2019 6
PJ554 10 15/04/2019 6
PJ529 1 01/01/2020 8
PJ529 2 01/01/2020 3
PJ529 7 01/01/2020 6
PJ529 8 01/01/2020 5
PJ529 9 15/11/2019 5
PJ529 10 15/11/2019 8
PF380 3 01/01/2018 3
PF380 4 01/01/2018 1
PF380 5 01/01/2018 5
PF380 6 01/01/2018 2
PF380 7 01/01/2020 6
PF380 8 01/01/2020 5
Quadro 5. Resultado da divisão da tabela
3FN: terceira forma normal
Para a terceira forma normal, a tabela precisa estar na segunda forma normal 
e também não pode ter dependências transitivas.
Normalização de dados8
Laiane
Para Siqueira (2018), “quando uma coluna ou conjunto de colunas A depende de 
outra coluna B, que não pertence à chave primária, dizemos que A é dependente 
transitivo de B”.
Repare que, na tabela Empregado, as colunas “Categoria” e “Salario” podem 
ser segmentadas em uma nova tabela. Dessa forma, temos (Quadros 6 e 7):
CodEmpregado Nome Categoria
1 João A1
2 Maria A1
3 Augusto A1
4 Joana B2
5 Alex B3
6 Sophie B3
7 José B2
8 Angelo B3
9 Márcia A2
10 Pedro A2
Quadro 6. Tabela Empregado
Categoria Salario
A1 6
A2 5
B2 4
B3 2
Quadro 7. Tabela Categoria após segmentação
9Normalização de dados
Laiane
Forma normal Boyce-Codd
Para a forma normal Boyce-Codd, temos que todo atributo da tabela deve 
depender única e exclusivamente da própria chave primária.
Carvalho (2018, documento on-line) menciona que “uma tabela está na BCNF se, 
e somente se, estiver na 3FN e todo atributo não chave depender funcionalmente 
diretamente da chave primária, ou seja, não há dependências entre atributos não 
chave.” 
Portanto, para que a tabela esteja nessa forma normal, a dependência de 
qualquer coluna deve se limitar somente à chave primária da própria tabela. 
Veja um exemplo no Quadro 8.
Categoria Salario
A1 6
A2 5
B2 4
B3 2
Quadro 8. Tabela Categoria
Repare que a coluna “Salario” depende exclusivamente da coluna “Cate-
goria”; portanto, essa tabela está na forma normal Boyce-Codd.
Normalização de dados10
Laiane
Laiane
Laiane
MASSAN, J. Normalização de banco de dados. 2007. Disponível em: <infernatica.blo-
gspot.com/2007/09/normalizao-de-banco-de-dados.html>. Acesso em: 19 jul. 2018.
Leituras recomendadas
CARVALHO, C. E. M. Banco de dados: a forma normal Boyce Codd. 06 abr. 2018. Dis-
ponível em: <https://pt.linkedin.com/pulse/banco-de-dados-forma-normal-boyce-
-codd-medeiros-de-carvalho>. Acesso em: 19 jul. 2018.
MACÊDO, D. SGBD - Sistema de Gerenciamento de Banco de Dados. 15 jan. 2012. Dispo-
nível em: <https://www.diegomacedo.com.br/sgbd-sistema-de-gerenciamento-de-
-banco-de-dados/>. Acesso em: 19 jul. 2018.
SIQUEIRA, F. Normalização: parte 1. 2018. Disponível em: <https://sites.google.com/
site/uniplibancodedados1/aulas/normalizacao>. Acesso em: 19 jul. 2018.
Referência
11Normalização de dados
Dica do professor
Os bancos de dados são utilizados para armazenar diversos tipos de informações, desde 
relacionadas a uma conta de e-mail até dados importantes. As ameaças a esses bancos podem 
resultar na perda ou na degradação de alguns ou de todos os objetivos de segurança aceitos, que 
são: integridade, disponibilidade e confidencialidade.
Veja, nesta Dica do Professor, como manter a segurança nos sistemas de gerenciamento de bancos 
de dados.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/3b22feb937159f5a01082db716be2213
Exercícios
1) O que é uma dependência funcional total?
A) Quando a coluna depende parcialmente da chave primária.
B) Quando a coluna depende integralmente da chave primária.
C) Sem dependência entre as colunas.
D) Quando a coluna depende temporariamente da chave primária.
E) Quando a dependência é totalmente ocasional.
2) Para a tabela a seguir, qual é o atributo que representa uma dependência funcional 
transitiva? 
Tabela Aluno (Código PK, Nome, Endereço, Cidade, UF, Curso)
A) Cidade depende de UF.
B) Curso depende de Código.
C) Nome depende de Código.
D) Endereço depende de Curso.
E) Curso depende de UF.
3) O que significa dizer que a tabela está na 1FN?
A) Significa que a tabela tem chave primária concatenada.
B) Significa que tem poucos campos.
C) Significa que apresenta todas as informações redundantes.
D) Significa que não tem tabelas aninhadas.E) Significa que é quando tem o campo Código.
Laiane
Laiane
Laiane
Laiane
Ao todo, existem três dependências: total, parcial e transitiva. Cada uma delas representa algo que ocorre em função, parcial ou não, de outro.
Laiane
A dependência transitiva indica que algum atributo depende de outro atributo, sem este ser uma chave da tabela em questão.
Laiane
A tabela está na primeira forma normal se nenhum de seus atributos apresentarem domínios multivalorados.
Laiane
4) Como identificar uma tabela na 3FN?
A) Precisa apresentar mais de uma coluna como chave primária.
B) Não deve apresentar chave primária.
C) Deve estar na 2FN e, também, não ter dependências transitivas.
D) Não existe a 3FN.
E) Deve estar aninhada com outras tabelas.
5) Uma tabela que está na forma normal de Boyce-Codd está também na 3FN?
A) Não, pois a forma normal de Boyce-Codd vem antes da 3FN.
B) Não, pois a 3FN é diferente da forma normal de Boyce-Codd.
C) Não, pois a forma normal de Boyce-Codd é um estágio hipotético.
D) Sim, pois a 3FN é outro nome para a forma normal de Boyce-Codd.
E) Sim, pois, se está na forma normal de Boyce-Codd, está também aderente à 3FN.
Laiane
Laiane
Laiane
Para que tabela esteja na 3FN, ela deve estar na 2FN e, também, não pode ter dependências transitivas.
Laiane
A forma normal Boyce-Codd é atendida quando todos os atributos podem ser chaves candidatas.Para que a tabela esteja na 3FN, deve estar na 2FN e, também, não pode ter dependências transitivas.
Laiane
Na prática
Arlindo trabalha em uma empresa. Esta tem um sistema que possui seus dados salvos em um 
Sistema de Gerenciamento de Banco de Dados do tipo MySQL.
Por infelicidade do destino, alguém realizou um comando que 
acabou por deletar uma entrada de registro. Então, a fim de buscar quem são as pessoas que têm 
acesso ao bando de dados e resolver o problema, Arlindo utilizou logs de auditoria. 
 
Veja a seguir, Na Prática.
Conteúdo interativo disponível na plataforma de ensino!
 
Saiba +
Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor:
Você sabe o que é Normalização de Banco de Dados?
Leia o artigo recomenda e aprenda sobre o conceito e as regras básicas da normalização de dados, 
as quais devem ser seguidas para a criação de um Sistema de Gerenciamento de Banco de Dados, 
de forma a garantir a melhor performance e fluidez do sistema que o comporta.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Modelagem de Dados - Normalização - Primeira Forma Normal
Assista ao vídeo a seguir e aprenda mais sobre a primeira, a segunda e a terceira forma normal. Elas 
são um conjunto de regras para garantir que as tabelas dos bancos de dados apresentem uma 
relação mais apropriada e enxuta, a fim de não repetir informações.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Modelagem de Dados - Normalização - Segunda Forma Normal
Neste vídeo você vai ver como normalizar uma tabela em um banco de dados até a segunda forma 
normal (2FN)
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://pedrogalvaojunior.wordpress.com/2016/06/24/dica-do-mes-voce-sabe-o-que-e-normalizacao-de-banco-de-dados/
https://www.youtube.com/embed/eRaAMNjCFYw
https://www.youtube.com/embed/6ER9lWOk-cY
Modelagem de Dados - Normalização - Terceira Forma Norma
Neste vídeo você vai ver mais o processo de normalização da Terceira Forma Normal.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://www.youtube.com/embed/usA8QKvEHWw

Mais conteúdos dessa disciplina