SóProvas


ID
5435935
Banca
Instituto Consulplan
Órgão
Prefeitura de Colômbia - SP
Ano
2021
Provas
Disciplina
Banco de Dados
Assuntos

Em relação às formas normais em Modelagem de Banco de Dados, “parte de uma chave determina parte de uma chave e uma coluna não chave determina parte de uma chave”. Os dois casos especiais são abrangidos por:

Alternativas
Comentários
  • FNBC: “todo determinante é chave candidata.”

  • Forma Normal de Boyce-Codd (FNBC): Uma tabela está na FNBC se, e somente se, estiver na 3FN e, para cada dependência x -> y, X deverá ser uma superchave, isto é, todo determinante é uma chave candidataToda tabela que esteja na FNBC está na 3FNmas nem toda tabela na 3FN está na FNBC.

  • Vamos destrinchar o comando da questão para entendermos melhor

    Há uma tabela e "parte de uma chave determina parte de uma chave".

    • Até aqui entendemos que existe uma dependência parcial, pois uma chave determina outra... Já que estamos tratando de dependências, eliminamos a letra “A”. Por quê? 1FN trata-se eliminar o problema de atributos (colunas) multivalorados, como, por exemplo, dois números de telefone.

    Vamos para a outra parte: "uma coluna não chave determina parte de uma chave".

    • Por que não pode ser a letra B? A 2FN explica que todos os outros atributos (colunas) não chaves devem depender da chave primária completa. Veja que está acontecendo um problema contrário em vez da chave determinar uma coluna não chave, um atribuo é quem está determinando. “Por isso, Arnaldo?” A 2FN não resolve isso.
    • “C” errada, por quê? 3FN explica: não pode ter o valor calculado de outra chave primária, exemplo calcular idade a partir da data de nascimento. Imagine se por algum motivo se a coluna data de nascimento fosse deletada. A coluna "idade" não faria sentido. O comando não está tratando de atributo calculado.
    • FNBC: O interessante é que em RLM eu posso trocar o "Todo" pelo "Se, então". Vamos reler a clássica frase da FNBC: “todo determinante é chave candidata", ou seja, "se um atributo determina outro, então ele é/vira uma chave candidata". Vamos reler o comando da questão: "uma coluna não chave determina parte de uma chave". Se essa coluna (atributo) determina outro, ela irá virar uma chave candidata e isso é o que a FNBC faz para controlar redundâncias e anomalias de atualização.

    Fontes:

    • Livro SQL para Dummies, Taylor, Allen da Editora Campus.
    • PDF do estratégia concursos do professor Thiago Rodrigues Cavalcanti
    • Modelagem de Dados – O que são Dependências http://www.bosontreinamentos.com.br/modelagem-de-dados/modelagem-de-dados-dependencias/
    • Artigo SQL Magazine 7 - Formas normais superiores https://www.devmedia.com.br/artigo-sql-magazine-7-formas-normais-superiores/7474

    Em frente enfrente.