Questão de Banco de Dados — Normalização — CESPE / CEBRASPE 2025
- Código
- ce417343
- Banca
- CESPE / CEBRASPE
- Órgão
- FUB
- Ano
- 2025
- Cargo
- Tec ( )
- CCerto
- EErrado
GabaritoE — Errado
Gabarito: Errado. A definição de 2FN não tem relação com "dependência lógica entre as tuplas correlacionadas"; ela exige que a relação esteja na 1FN e que todo atributo não chave seja total e funcionalmente dependente da chave primária inteira, ou seja, que não existam dependências parciais. O conceito citado no item não corresponde a nenhuma forma normal e mistura ideias de dependência funcional com noções vagas de correlação entre linhas.
A normalização é o processo de organizar esquemas de relação para reduzir redundância e evitar anomalias de inserção, exclusão e atualização. Ela se baseia em dependências funcionais (DFs) entre atributos: dizemos que X → Y quando o valor de X determina unicamente o valor de Y. As formas normais são testes aplicados sobre essas dependências, e cada uma exige condições mais fortes que a anterior.
A 1FN exige que todos os atributos sejam atômicos (indivisíveis), sem multivaloração nem atributos compostos. A 2FN parte da 1FN e acrescenta: nenhum atributo não chave pode depender de apenas parte de uma chave primária composta — deve haver dependência funcional total da chave. A 3FN exige, além disso, que não haja dependências transitivas (atributo não chave dependendo de outro atributo não chave).
O item fala em "dependência lógica entre as tuplas correlacionadas". Isso não é um conceito da teoria de normalização. Tuplas são linhas de uma tabela; a normalização trata de dependências entre atributos (colunas), não entre linhas. A expressão "tuplas correlacionadas" sugere uma relação entre registros, o que não faz parte da definição de 2FN. A banca tenta confundir o candidato com um termo técnico aparente, mas sem fundamento.
Para fixar: a 2FN é sobre dependência funcional total da chave primária. Se a chave é composta (ex.: {cod_pedido, cod_produto}), nenhum atributo não chave pode depender apenas de cod_pedido ou apenas de cod_produto. Exemplo clássico: em uma tabela com chave {Cpf, Numero_projeto}, o atributo Nome_funcionario depende apenas de Cpf — isso é uma dependência parcial, violando a 2FN.
A banca troca o conceito de 2FN por uma expressão vaga e sem sentido técnico ("dependência lógica entre as tuplas correlacionadas"). O candidato que não domina a definição exata pode achar que "dependência" basta. Lembre-se: 2FN = 1FN + ausência de dependências parciais (todo atributo não chave depende da chave inteira).
Critério | 1FN | 2FN | 3FN |
|---|---|---|---|
Base | Atributos atômicos (indivisíveis) | 1FN + ausência de dependências parciais | 2FN + ausência de dependências transitivas |
Dependência exigida | Nenhuma (apenas estrutura atômica) | Todo atributo não chave depende totalmente da chave primária inteira | Todo atributo não chave depende apenas da chave primária (não de outro atributo não chave) |
Violação típica | Atributo multivalorado ou composto | Atributo não chave dependendo de parte da chave composta | Atributo não chave dependendo de outro atributo não chave |
Exemplo de violação | Telefone com múltiplos números em uma coluna |
|
|
A afirmação está incorreta porque a 2FN não é definida por "dependência lógica entre as tuplas correlacionadas". A definição correta é: uma relação está na 2FN se estiver na 1FN e cada atributo não chave for total e funcionalmente dependente da chave primária (ou candidata), ou seja, não pode haver dependência parcial de parte da chave. O termo "tuplas correlacionadas" não pertence à teoria da normalização — ela trata de dependências entre atributos, não entre linhas.
Gabarito: Errado
Link permanente: /questoes/ce417343