Chuẩn hoá là quá trình tách bảng thành các bảng nhỏ hơn dựa vào các phụ thuộc hàm. Các dạng chuẩn là các chỉ dẫn để thiết kế các bảng trong CSDL.Mục đích của chuẩn hoá là loại bỏ các dư thừa dữ liệu và các lỗi khi thao tác dư thừa và các lỗi khi thao tác dữ liệu (Insert, Delete, Update). Nhưng chuẩn hoá làm tăng thời gian truy vấn. Giúp tăng khả năng học và giải đề của các bạn. Trong bài này coder.com.vn sẽ tổng hợp các Bài tập chuẩn hóa cơ sở dữ liệu có lời giải chi tiết mới nhất 2020
Hướng dẫn giải bài tập cơ sở dữ liệu
Đề bài: Cho quan hệ R trên tập thuộc tính U = (ABCDEGHIJ) , tập tùy thuộc hàm F = A -> BC, E -> GC, B -> EH, AC -> I, GD -> AH, D->JG
a, tìm bao đóng của tập tính chất AD
b, tìm tổng cộng khóa ít nhất của R
c, tìm tập tùy thuộc hàm ít nhất F* của F
d, chuẩn hóa quan hệ về 3NF
Chỉ dẫn giải:
Xét từng tùy thuộc hàm, tìm bao đóng của AD
Xét A -> BC tại AD có A nên ta sẽ đưa BC vào bao đóng AD+ = ADBC
Xét E -> GC bao đóng hiện trong không hề có E bỏ lỡ sau đấy xét tiếp lần lượt các phụ thuộc hàm còn lại và trở lại xét các tùy thuộc hàm đã bỏ lỡ. sau cùng ta được kết quả:
AD+ = ADBCEHIJGI
b) Tìm khóa
U = ABCDEGHIJG
Giao của khóa: X = U – tập tất cả tính chất bên phải phụ thuộc hàm
X = ABCDEGHIJ – BCGEHIAJ = D
Tìm bao đóng của D
D+ = DJGAHBCEI
So sánh bao đóng với U
D+ = U vậy khóa ít nhất của R là D
nếu giao của khóa bằng rỗng thì đi tìm bao đóng của từng thuộc tính có tại U, phần tử nào bằng U thì nó là khóa.
c)Loại bỏ tùy thuộc hàm dư thừa F*
b1:Tách vế phải của tùy thuộc hàm
chẳng hạn như A -> BC tách thành A -> B và A -> C
cũng giống như ta được:
A -> B , A -> C, E -> G , E -> C, B -> E và B -> H, AC -> I và GD -> A, GD -> H , D -> J, D -> G
b2: Kiểm tra từng phụ thuộc hàm có dư thừa không bằng cách: Tìm bao đóng của từng phần tử bên trái bỏ lỡ phần tử bên phải, nếu kết quả bao đóng có phần tử thuộc vế phải thì dư thừa trái lại là không
Ví dụ:
A -> B => A+ = ACI không có B vậy A -> B không thừa.
A -> C => A+ = ABEHGCI có C vậy A -> C thừa
cũng giống như với những phụ thuộc hàm còn lại
b3: đưa ra F * bỏ đi đi những tùy thuộc hàm thừa
b4: đào thải tùy thuộc hàm dư thừa vế trái.
Chỉ xét những tùy thuộc hàm vế trái có lớn hơn 1 phần tử
AC -> I
kiểm tra A thừa : tính C+
C+ = C, không có I vậy A không thừa
Kiểm duyệt C thừa : tính A+
A+ = ABEHGCI, có I vậy C thừa
Kết quả: A -> I
Cũng giống như với các phụ thuộc hàm còn lại
b5: đưa ra hậu quả F*
d) Chuẩn hóa quan hệ về chuẩn 3. NF
b1: kiểm duyệt tổng cộng các tính chất trong U có tồn lại trong VT , VP của PTH F* nữa không ?
b2: Gộp các PTH có cùng vế trái.
A -> BI và E -> GC, B -> EH, D -> AJG
b3: Tách về dạng chuẩn 3
R1(ABI) R2(EGC) R3(BEH) R4(DAJG)
Ta thấy khóa của quan hệ nằm trong R4
b4: Kết Luận
Vậy để quan hệ R thành dạng chuẩn 3NF ta cần tách thành các quan hệ sau: R1(ABI) R2(EGC) R3(BEH) R4(DAJG)
Okê Vậy coi như là mình đã xử lý kết thúc những bài tập cơ sở dữ liệu này, nguồn của bài tập này mình chiết xuất từ anh Son Nguyen. nếu như vẫn không hiểu các bạn có khả năng tìm từ khóa bài tập cơ sở dữ liệu trên youtube sẽ dễ hiểu hơn, mình xin được kết thúc bài viết tại đây.
Xem thêm: Quy trình tuyển dụng nhân viên nhà hàng, khách sạn tại đây
Xem thêm: Bảng xếp hạng mức độ ảnh hưởng của các ngôn ngữ lập trình 2020
Minh Nguyệt_Tổng hợp(tham khảo /nguyenvanhieu.vn)