Ficou muita confusa a explicação da 5FN. Não está claro, para mim, a forma correta para identificar o problema , assim como a técnica para corrigir.
Ficou muita confusa a explicação da 5FN. Não está claro, para mim, a forma correta para identificar o problema , assim como a técnica para corrigir.
Oii, Humberto! Tudo bom?
Realmente, são conceitos que vamos pegando aos poucos conforme avançamos nos estudos. Não se preocupe, deixo abaixo algumas informações sobre a 5FN para te ajudar a absover o conteúdo, vamos lá!
A 5FN (Quinta Forma Normal) é uma etapa avançada da normalização que resolve problemas de dependências de junção que não são cobertas pelas formas normais anteriores (como 1FN, 2FN, 3FN e 4FN). Ela evita que uma tabela seja dividida em tabelas menores e reconstruída sem perder informações ou criar inconsistências, a menos que essa divisão seja realmente necessária.
O foco da 5FN está em lidar com dependências multivaloradas complexas ou situações onde há ciclos de dependências entre atributos que só fazem sentido quando considerados juntos.
Um problema de 5FN aparece quando:
Imagine uma tabela que registra professores, disciplinas e salas:
Professor | Disciplina | Sala |
---|---|---|
João | Matemática | S1 |
João | Física | S2 |
Maria | Física | S2 |
Maria | Matemática | S1 |
Se você tentar dividir essa tabela em duas (por exemplo, Professor-Disciplina e Disciplina-Sala) e depois juntá-las, pode acabar com combinações inválidas, como "João ensina Física na S1", o que não é verdade. Isso indica um problema de 5FN: há uma dependência cíclica entre Professor, Disciplina e Sala que não foi resolvida.
Para corrigir um problema de 5FN, você precisa:
Analise as dependências:
Divida em tabelas menores:
Tabela 1: Professor-Disciplina
Professor | Disciplina |
---|---|
João | Matemática |
João | Física |
Maria | Física |
Maria | Matemática |
Tabela 2: Disciplina-Sala
Disciplina | Sala |
---|---|
Matemática | S1 |
Física | S2 |
Tabela 3: Professor-Sala
Professor | Sala |
---|---|
João | S1 |
João | S2 |
Maria | S2 |
Maria | S1 |
Verifique a junção:
A 5FN é rara na prática porque exige situações muito específicas (dependências cíclicas complexas). Geralmente, se você chegou à 4FN e os dados estão consistentes, já é suficiente. Para identificar se a 5FN é necessária, pergunte: "Minha tabela tem combinações de atributos que só fazem sentido juntas e não podem ser separadas sem criar inconsistências?". Se sim, aplique a decomposição como no exemplo.
Para ler mais sobre o tema, segue um artigo para leitura:
Espero ter ajudado, bons estudos e até mais, Humberto!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado!