Lecture 03 - Slide - Data Normalization - For Student
Lecture 03 - Slide - Data Normalization - For Student
Cơ sở dữ liệu
SQL dành cho Phân tích Dữ liệu
Mô hình dữ liệu
3
Mô hình hóa dữ liệu
5
Ánh xạ sơ đồ thực thể quan hệ ER
6
Ánh xạ quan hệ thực thể kết hợp
(Mapping associative entities)
7
Ánh xạ quan hệ thực thể kết hợp
(Mapping associative entities)
Thực thể kết hợp SHIPMENT với thuộc tính giá trị nhận dạng
8
Ánh xạ quan hệ thực thể kết hợp
(Mapping associative entities)
Thực thể kết hợp SHIPMENT khi có thuộc tính giá trị nhận dạng
9
Ánh xạ quan hệ thực thể kết hợp
(Mapping associative entities)
Thực thể kết hợp ORDER_LINE khi không có thuộc tính giá trị nhận dạng
10
Ánh xạ quan hệ thực thể kết hợp
(Mapping associative entities)
Thực thể kết hợp ORDER_LINE khi không có thuộc tính giá trị nhận dạng
11
Ánh xạ quan hệ thực thể đơn nhất
(Mapping unary relationships)
▪ Một – Nhiều & Một – Một: Khóa ngoại đệ quy trong cùng một mối quan hệ.
12
Ánh xạ quan hệ thực thể đơn nhất
(Mapping unary relationships)
13
Ánh xạ quan hệ thực thể đơn nhất
(Mapping unary relationships)
14
Bài tập
15
Ánh xạ quan hệ thực thể bậc ba và quan hệ bậc n
(Mapping ternary (and n-ary) relationships
▪ Mỗi thực thể có một quan hệ và một thực thể kết hợp
▪ Thực thể kết hợp có khóa ngoại cho từng thực thể trong một quan hệ
Ví dụ: Làm sao để chuyển quan hệ thực thể bậc ba thành quan hệ thông thường?
16
Ánh xạ quan hệ thực thể bậc ba và quan hệ bậc n
(Mapping ternary (and n-ary) relationships
17
Bài tập: Ánh xạ quan hệ thực thể bậc ba
Một trường đại học cần có bản ghi thông tin của môn học, khóa học mà
giảng viên đã giảng dạy
18
Mô hình hóa dữ liệu
20
Lý do cần phải Chuẩn hóa dữ liệu
Ví dụ, chúng ta có một quan hệ như sau:
21
Lý do cần phải Chuẩn hóa dữ liệu
Vấn đề xảy ra khi không Chuẩn hóa dữ liệu:
▪ Bạn không thể thêm một nhân viên mới vào mối quan hệ, khi nhân viên đó
không tham gia vào khóa học
▪ Nếu loại bỏ nhân viên có ID là 140 thì chúng ra sẽ mất thông tin về sự tồn tại
của lớp Tax Acc
▪ Khi tăng lượng cho nhân viên có ID là 100 thì phải cập nhật nhiều bản ghi
22
Chuẩn hóa dữ liệu
Chuẩn hóa cơ sở dữ liệu là Quá trình cấu trúc cơ sở dữ liệu, thường là cơ
sở dữ liệu quan hệ, phù hợp với một loạt các hình thức được gọi là bình
thường để giảm dư thừa dữ liệu và cải thiện tính toàn vẹn dữ liệu.
23
Dạng chuẩn 1
(Normalization Form 1)
24
Dạng chuẩn 2
(Normalization Form 2)
▪ 1NF + Các thuộc tính không khoá phải phụ thuộc hàm đầy đủ vào khoá chính.
▪ Phụ thuộc hàm hiện (Functional dependency): Giá trị của một thuộc tính, hoặc kết
hợp các thuộc tính, (yếu tố quyết định) xác định giá trị của một thuộc tính khác.
▪ Phụ thuộc hàm ẩn (Partial functional dependency): là một loại phụ thuộc hàm.
Tuy nhiên, có một thuộc tính không khóa là phụ thuộc vào một phần của khóa dự
tuyển (bao gồm cả khóa chính) nhưng không phải toàn bộ khóa dự tuyển
(candidate key).
25
Phụ thuộc hàm hiện
26
Dạng chuẩn 2
(Normalization Form 2)
28
Ví dụ của Dạng chuẩn 3
30
Mô hình hóa dữ liệu
Làm việc nhóm, chuẩn hóa bảng dữ liệu excel thành 1NF, 2NF và 3NF
32
Tài liệu tham khảo
• Part 2 - Conceptual Data Modeling and Database Design - "Fundamentals of Database Systems"
by Ramez Elmasri, Shamkant B. Navathe
• Chapter 7 - Part 2 - Database Design and the E-R Model - "Database System Concepts" by
Abraham Silberschatz, Henry F. Korth, and S. Sudarshan
33
SQL dành cho Phân tích Dữ liệu