Trình chuẩn hóa cơ sở dữ liệu

Hướng dẫn tương tác về các dạng chuẩn hóa cơ sở dữ liệu (1NF đến 5NF/BCNF). Học với ví dụ trực quan hiển thị dữ liệu chưa chuẩn hóa và kết quả đã chuẩn hóa đúng.

Mọi xử lý diễn ra trong trình duyệt của bạn. Không có dữ liệu nào được tải lên.
Offline Ready

Trình chuẩn hóa cơ sở dữ liệu

Hướng dẫn tương tác về các dạng chuẩn hóa cơ sở dữ liệu (1NF đến 5NF/BCNF). Học với ví dụ trực quan hiển thị dữ liệu chưa chuẩn hóa và kết quả đã chuẩn hóa đúng.

🔒Mọi xử lý diễn ra trong trình duyệt của bạn. Không có dữ liệu nào được tải lên.
Tổng quan các dạng chuẩn hóa
1NF
2NF
3NF
BCNF
4NF
5NF
1NF
2NF
3NF
BCNF
4NF
5NF
Ví dụ vi phạm & Cách sửa

Trước (Chưa chuẩn hóa)

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

Sau (Đã chuẩn hóa)

StudentCourses
StudentIDNameCourse
1AliceMath
1AlicePhysics
1AliceChemistry
2BobEnglish
2BobMath
3CarolBiology
3CarolChemistry
3CarolPhysics
Ví dụ SQL
SQL Trước (Vi phạm dạng chuẩn)
-- Violates 1NF: multi-valued column
CREATE TABLE Students (
  StudentID INT PRIMARY KEY,
  Name VARCHAR(100),
  Courses VARCHAR(500)  -- comma-separated!
);
SQL Sau (Đã chuẩn hóa)
-- 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)
);