Normalizador de Banco de Dados

Guia interativo para formas normais de banco de dados (1NF até 5NF/BCNF). Aprenda com exemplos visuais mostrando dados não normalizados e resultados normalizados corretamente.

Todo o processamento acontece no seu navegador. Nenhum dado é enviado.
Offline Ready

Normalizador de Banco de Dados

Guia interativo para formas normais de banco de dados (1NF até 5NF/BCNF). Aprenda com exemplos visuais mostrando dados não normalizados e resultados normalizados corretamente.

🔒Todo o processamento acontece no seu navegador. Nenhum dado é enviado.
Visão Geral das Formas Normais
1NF
2NF
3NF
BCNF
4NF
5NF
1NF
2NF
3NF
BCNF
4NF
5NF
Exemplo de Violação e Correção

Antes (Não Normalizado)

StudentIDNameCourses
1AliceMath, Physics, Chemistry
2BobEnglish, Math
3CarolBiology, Chemistry, Physics

Depois (Normalizado)

StudentCourses
StudentIDNameCourse
1AliceMath
1AlicePhysics
1AliceChemistry
2BobEnglish
2BobMath
3CarolBiology
3CarolChemistry
3CarolPhysics
Exemplos SQL
SQL Antes (Viola Forma Normal)
-- Violates 1NF: multi-valued column
CREATE TABLE Students (
  StudentID INT PRIMARY KEY,
  Name VARCHAR(100),
  Courses VARCHAR(500)  -- comma-separated!
);
SQL Depois (Normalizado)
-- 1NF: Each cell has atomic values
CREATE TABLE Students (
  StudentID INT PRIMARY KEY,
  Name VARCHAR(100)
);

CREATE TABLE StudentCourses (
  StudentID INT,
  Course VARCHAR(100),
  PRIMARY KEY (StudentID, Course),
  FOREIGN KEY (StudentID) REFERENCES Students(StudentID)
);