[DATABASE] Dạng chuẩn cao nhất của lược đồ quan hệ

Cách thực hiện:
B1: Tìm mọi khóa của lược đồ quan hệ
B2: Kiểm tra dạng chuẩn từ cao xuống thấp (BCNF - 3NF - 2NF - 1NF)

  • BCNF (Boyce-Codd Normal Form) 
    • Tất cả VT của phụ thuộc hàm là khóa (VT là siêu khóa)

  • 3NF (Third Normal Form)
    • Phân rã VP của phụ thuộc hàm sao cho VP chỉ chứa một thuộc tính
    • Thỏa 1 trong 2 điều kiện: VT của phụ thuộc hàm là khóa hoặc VP là tập con của khóa

  • 2NF (Second Normal Form)
    • B1: Xác định các thuộc tính không là khóa
    • B2: Tất cả thuộc tính không là khóa phải phụ thuộc đầy đủ vào khóa
    • Trường hợp khác
      • #1: Cách để kiểm tra có đạt 2NF không trong trường hợp không biết cách xác định tính phụ thuộc đầy đủ:
        • Với mỗi khóa K, tìm bao đóng của tất cả tập con thực sự Xi của K
        • Nếu tồn tại bao đóng Xi+ chứa thuộc tính không khóa thì không đạt dạng chuẩn 2, ngược lại đạt dạng chuẩn 2

      • #2: Nếu lược đồ chỉ có 01 khóa và khóa đó chỉ có duy nhất 01 thuộc tính thì chắc chắn đạt dạng chuẩn 2

  • 1NF (First Normal Form) 
    • Nếu lược đồ quan hệ không đạ chuẩn 2NF thì kết luận đạt chuẩn 1

-----
Nhận xét:
  • 1NF: 
    • Trùng lắp dữ liệu
    • Khó khăn khi cập nhật dữ liệu
  • 2NF:
    • Khi đạt chuẩn 2 thì cũng đạt chuẩn 1
    • Trùng lắp dữ liệu
  • 3NF: 
    • Khi đạt chuẩn 3 thì cũng đạt chuẩn 2
    • Khi thiết kế cơ sở dữ liệu, yêu cầu đạt tối thiểu chuẩn 3
    • Vẫn còn trùng lặp thông tin
-----
Giải thích:
  • Tập con thực sự: Nếu A là tập con của B mà A không bằng B thì A được gọi là tập con thực sự của B
  • X A được gọi là phụ thuộc hàm đầy đủ nếu không tồn tại Y ⊂ X để cho Y A Ngược lại, nó không phụ thuộc đầy đủ là nó phụ thuộc 1 phần --- VD: khoá là AB, thuộc tính ko khoá là C Phụ thuộc đầy đủ: AB → C Phụ thuộc 1 phần: A → C
  • VT: vế trái
  • VP: vế phải
-----

Ví dụ về các dạng chuẩn:

  • Dạng chuẩn BC - BCNF:
Lược đồ quan hệ Q (A, B, C, D, E, I), PTH F={ACD→EBI, CE→AD}
B1. Q có hai khóa là {ACD, CE} B2. Mọi PTH trong F đều có VT là một siêu khóa (VT chứa khóa).
Q đạt dạng chuẩn BC
  • Dạng chuẩn 3 - 3NF:
Lược đồ quan hệ Q (A, B, C, D), PTH F={AB→D, C→D} B1. Q có một khóa là ABC B2. Mọi phụ thuộc hàm trong F đều đã có vế phải một thuộc tính B3. Xét AB→D, có Vế trái (AB) không phải là siêu khóa (VT không chứa khóa), và Vế phải (D) không là thuộc tính khóa → Vậy Q không đạt DC3
  • Dạng chuẩn 2 - 2NF:
Ví dụ 1. Cho Q1 (A, B, C, D), PTH F={A→B, B→DC} Lược đồ chỉ có một khóa là A và khóa có duy nhất 1 thuộc tính, nên mọi thuộc tính đều phụ thuộc đầy đủ vào khóa.
→ Vậy Q1 đạt DC2
Ví dụ 2. Cho Q2 (A, B, C, D), PTH F={AB→D, C→D} Lược đồ có khóa là ABC, D là thuộc tính không khóa Ta có, C ABC và C→D vậy nên D không phụ thuộc đầy đủ vào khóa. → Vậy Q2 không đạt DC2
-----
Liên kết hỗ trợ:
- Cách xác định các dạng chuẩn:  https://www.youtube.com/watch?v=yMFLJ8E2R30
- Tìm mọi khóa của lược đồ quan hệ: https://www.youtube.com/watch?v=SRAp2i4S-zI
- Tìm bao đóng của tập thuộc tính: https://www.youtube.com/watch?v=x1FnU9nQfzw





Nhận xét

Bài đăng phổ biến từ blog này

[DATABASE] Tìm mọi khóa của lược đồ quan hệ

[DATABASE] Phủ tối thiểu của tập phụ thuộc hàm