Pular para o conteúdo principal

Questão de Banco de Dados — Normalização — FGV 2023

Banco de DadosNormalização
Código
fg161126
Banca
FGV
Órgão
TJ SE
Ano
2023
Cargo
TJ ( )

A normalização de dados é o processo de analisar os esquemas de relações com base nas dependências funcionais de seus atributos e chaves primárias, envolvendo uma série de Formas Normais (FN). Observe a instância da tabela PEDIDO a seguir.

 

ID_PEDIDO

DATAID_CLIENTE

NOME_CLIENTE

111/07/20231João
211/07/20232Paulo

As colunas de PEDIDO têm valores atômicos e as colunas não chaves (DATA, ID_CLIENTE, NOME_CLIENTE) são totalmente dependentes da chave primária (ID_PEDIDO). Portanto, PEDIDO está normalizada nas FN:

  1. A1FN e 2FN;
  2. B1FN e 3FN;
  3. C2FN e 3FN;
  4. D2FN e 4FN;
  5. E3FN e 4FN.
Revelar gabarito e comentário

GabaritoA — 1FN e 2FN;

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Normalização de dados: 1FN, 2FN e 3FN

Gabarito: letra A. A tabela PEDIDO está na 1FN (valores atômicos) e na 2FN (dependência total das colunas não chave em relação à chave primária), mas não está na 3FN, pois há dependência transitiva: NOME_CLIENTE depende de ID_CLIENTE, que não é chave. Portanto, a resposta correta é 1FN e 2FN.

A normalização é o processo de analisar esquemas de relações com base nas dependências funcionais e chaves primárias, com o objetivo de minimizar redundâncias e anomalias de inserção, exclusão e atualização. Cada forma normal impõe uma condição mais forte que a anterior, e a tabela só pode ser classificada na forma normal mais alta que satisfizer.

1FN (Primeira Forma Normal): exige que todos os atributos tenham valores atômicos, ou seja, não podem ser compostos (divisíveis em subpartes) nem multivalorados (conjunto de valores). O enunciado afirma expressamente que "as colunas de PEDIDO têm valores atômicos", logo a tabela está na 1FN.

2FN (Segunda Forma Normal): exige que a tabela esteja na 1FN e que todos os atributos não chave sejam totalmente dependentes da chave primária (dependência funcional total). Isso significa que não pode haver dependência parcial, ou seja, um atributo não chave não pode depender de apenas parte de uma chave composta. O enunciado afirma que "as colunas não chaves (DATA, ID_CLIENTE, NOME_CLIENTE) são totalmente dependentes da chave primária (ID_PEDIDO)", portanto a tabela está na 2FN.

3FN (Terceira Forma Normal): exige que a tabela esteja na 2FN e que não haja dependências transitivas, ou seja, um atributo não chave não pode depender de outro atributo não chave. Na tabela PEDIDO, observamos que NOME_CLIENTE depende de ID_CLIENTE, e ID_CLIENTE não é chave primária. Isso configura uma dependência transitiva: ID_PEDIDO → ID_CLIENTE → NOME_CLIENTE. Portanto, a tabela viola a 3FN.

Como a tabela satisfaz 1FN e 2FN, mas não 3FN, a classificação correta é 1FN e 2FN.

NÃO CAIA NESSA!

A banca tenta confundir o candidato ao afirmar que as colunas não chave são "totalmente dependentes da chave primária". Isso garante a 2FN, mas não a 3FN. A pegadinha está em não perceber que NOME_CLIENTE depende de ID_CLIENTE (atributo não chave), configurando dependência transitiva. Muitos candidatos marcam 3FN por acharem que a ausência de dependência parcial já elimina a transitiva.

Critério

1FN

2FN

3FN

Valores atômicos

✅ Exigido e satisfeito

✅ Herdado da 1FN

✅ Herdado da 2FN

Dependência total dos atributos não chave em relação à chave primária

✅ Exigido e satisfeito (enunciado)

✅ Herdado da 2FN

Ausência de dependência transitiva (atributo não chave dependendo de outro não chave)

❌ Violado: NOME_CLIENTE depende de ID_CLIENTE (não chave)

Classificação final

✅ Atende

✅ Atende

❌ Não atende

Alternativa A — ✅ Correta ⟵ GABARITO

A tabela está na 1FN (valores atômicos) e na 2FN (dependência total das colunas não chave em relação à chave primária). Não está na 3FN devido à dependência transitiva entre NOME_CLIENTE e ID_CLIENTE. Portanto, a alternativa A está correta.

Alternativa B — ❌ Incorreta

Afirma que a tabela está na 1FN e 3FN. Incorreto porque, embora esteja na 1FN, a tabela não está na 3FN, pois há dependência transitiva (NOME_CLIENTE depende de ID_CLIENTE, que não é chave).

Alternativa C — ❌ Incorreta

Afirma que a tabela está na 2FN e 3FN. Incorreto porque, embora esteja na 2FN, a tabela não está na 3FN pela dependência transitiva mencionada.

Alternativa D — ❌ Incorreta

Afirma que a tabela está na 2FN e 4FN. Incorreto porque a tabela não está na 4FN (que exige ausência de dependências multivaloradas e, além disso, estar na 3FN, o que não ocorre).

Alternativa E — ❌ Incorreta

Afirma que a tabela está na 3FN e 4FN. Incorreto porque a tabela não está na 3FN (dependência transitiva) e, consequentemente, também não está na 4FN.

Gabarito: letra A

Link permanente: /questoes/fg161126