Databasenormaliserer

Interaktiv guide til databasenormaliseringsformer (1NF til 5NF/BCNF). Lær med visuelle eksempler som viser denormaliserte data og korrekt normaliserte resultater.

All behandling skjer i nettleseren din. Ingen data lastes opp.
Offline Ready

Databasenormaliserer

Interaktiv guide til databasenormaliseringsformer (1NF til 5NF/BCNF). Lær med visuelle eksempler som viser denormaliserte data og korrekt normaliserte resultater.

🔒All behandling skjer i nettleseren din. Ingen data lastes opp.
Oversikt over normaliseringsformer
1NF
2NF
3NF
BCNF
4NF
5NF
1NF
2NF
3NF
BCNF
4NF
5NF
Bruddeksempel og løsning

Før (denormalisert)

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

Etter (normalisert)

StudentCourses
StudentIDNameCourse
1AliceMath
1AlicePhysics
1AliceChemistry
2BobEnglish
2BobMath
3CarolBiology
3CarolChemistry
3CarolPhysics
SQL-eksempler
SQL før (bryter normalform)
-- Violates 1NF: multi-valued column
CREATE TABLE Students (
  StudentID INT PRIMARY KEY,
  Name VARCHAR(100),
  Courses VARCHAR(500)  -- comma-separated!
);
SQL etter (normalisert)
-- 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)
);