30/09/2018, 21:46
Cần giúp về 2NF,3NF,BCNF trong SQL
bác nào rảnh có thể teamviwer giảng em 2NF,3NF,BCNF trong SQL với ạ
Bài liên quan
bác nào rảnh có thể teamviwer giảng em 2NF,3NF,BCNF trong SQL với ạ
Bạn học KHTN TPHCM phải không?
không bạn ạ
bác có thể giúp e đc không ạ
Không phải thì thôi.
Đây là các chuẩn cơ sở dữ liệu trong hệ cơ sở dữ liệu mà nhỉ?
vâng bác
Tài liệu mình tổng hợp lâu rồi, bạn chịu khó đọc
Database Normalization (DN): Nhằm mục đích LOẠI BỎ DỮ LIỆU THỪA và TRÁNH BẤT THƯỜNG KHI CẬP NHẬT DỮ LIỆU (modify, insert, delete)
First Normal Form (1NF): loại bỏ trùng lặp và đa trị
Second Normal Form (2NF): loại bỏ các phụ thuộc hàm
Third Normal Form (3NF): loại bỏ các phụ thuộc bắc cầu
Boyce-Codd Normal Form (BCBF - 3.5NF): loại bỏ các phụ thuộc hàm của trường KHÓA
- Rules:
+ Tuân theo 3NF
+ Không có trường KHÓA nào PHỤ THUỘC HÀM vào một trường KHÔNG KHÓA
- How to normalize:
+ Tách các trường KHÔNG KHÓA (1) và trường KHÓA (2) bị phụ thuộc hàm bởi (1)
ra thành một quan hệ mới
+ Loại bỏ (2) ra khỏi bộ KHÓA CHÍNH của quan hệ ban đầu
+ Thêm (1) vào bộ KHÓA CHÍNH của quan hệ ban đầu
Functional Dependency(FD):
Cho quan hệ R; X, Y là tập các thuộc tính trên R.
X->Y là 1 ràng buộc: với 2 bộ bất kì t1, t2 trong thể hiện của R (trong một bảng thực thể của quan hệ R) ta có
nếu t1[X] = t2[X] thì t1[Y] = t2[Y]
==> Tóm lại là X sẽ KHÓA, còn Y là 1 trường phụ thuộc vào khóa.
Từ giá trị của 1 khóa (X) ta sẽ xác định DUY NHẤT được một giá trị bên trường Y
Full Functional Dependency (FFD):
Nó là FD mà mọi trường trong tập X đều tham gia vào việc xác định trường Y,
nếu bỏ đi bất kì một trường X thì ta sẽ không còn xác định được trường Y nữa
Partial Functional Dependency (PFD):
Ngược lại với FFD, đối với PFD khi ta có thể bỏ một trường trong X mà từ X
ta vẫn có thể xác định được ra trường Y
Transitive Functional Dependency (TFD):
X -> Y, Z nhưng trong đó Y -> Z
Vì vậy gọi trường Z phụ thuộc hàm bắc cầu qua khóa X
đọc mấy sách trong trường về sql ấy . chi tiết lắm . sách ptit thử coi