Dúvidas do Aluno – Questão  (Normalização)

Por
Atualizado em
Publicado em
1 min. de leitura

Olá, pessoal!
Aqui é o Prof. Washington Almeida e hoje vamos esclarecer uma dúvida muito comum em SQL que surgiu em nossa Questão sobre normalização.

Ano: 2018 Banca: CESPE / CEBRASPE Órgão: Polícia Federal Prova: CESPE – 2018 – Polícia Federal – Perito Criminal Federal – Área 3

Texto, Carta O conteúdo gerado por IA pode estar incorreto.”

As informações de um departamento e de seus colaboradores devem ser organizadas e armazenadas conforme a estrutura mostrada no diagrama precedente. Para isso, serão utilizados os comandos DDL a seguir.

create table organograma (
  id integer primary key,
  descricao varchar(50),
  cargo varchar(50),
  pai integer,
  constraint fk_organograma foreign key (pai) references organograma
);

create table colaborador (
  cpf bigint primary key,
  nome varchar(50),
  data_nascimento date
);

create table colaborador_organograma (
  cpf bigint,
  cargo integer,
  data_nomeacao date,
  data_exoneracao date,
  constraint pk_colaborador_organograma primary key (cpf, cargo),
  constraint fk_colaborador_organograma_cpf foreign key (cpf) references colaborador,
  constraint fk_colaborador_organograma_cargo foreign key (cargo) references organograma(id)
);

A tabela colaborador está na primeira forma normal.

Análise da Questão

A tabela colaborador está na Primeira Forma Normal (1FN), pois:
– Todos os atributos são atômicos (não há atributos multivalorados ou compostos);
– Não há repetição de grupos de atributos.

Segunda Forma Normal (2FN)

Para estar na 2FN, a tabela precisa:
1. Estar em 1FN;
2. Não apresentar dependência parcial (atributo não-chave não pode depender apenas de parte da chave primária).

Como a chave primária é simples (CPF), não existe dependência parcial. Logo, a tabela já está em 2FN.

Terceira Forma Normal (3FN)

Para estar na 3FN, a tabela precisa:
1. Estar em 2FN;
2. Não apresentar dependência transitiva entre atributos não-chave.

Na tabela colaborador, os atributos ‘nome’ e ‘data_nascimento’ dependem diretamente do CPF, sem existir dependência entre atributos não-chave. Logo, a tabela também está em 3FN.

Conclusão

– A tabela colaborador está corretamente em 1FN, 2FN e 3FN.
– O modelo como um todo também está normalizado, pois a relação de muitos-para-muitos entre colaborador e organograma foi tratada por meio da tabela associativa colaborador_organograma.

Portanto, a estrutura proposta já está em conformidade até a Terceira Forma Normal.


✍️ Prof. Washington Almeida
Gran Cursos – Banco de Dados / SQL

Por
Atualizado em
Publicado em
1 min. de leitura