BCNF vs 4NF (Chuẩn hóa lần 4)
Chuẩn hóa cơ sở dữ liệu là một kỹ thuật xử lý các hệ quản trị cơ sở dữ liệu quan hệ. Lỗi dữ liệu có thể tránh được trong một cơ sở dữ liệu được chuẩn hóa tốt. Chuẩn hóa được sử dụng để giảm dư thừa dữ liệu của cơ sở dữ liệu. Điều đó có nghĩa là thực hiện các bảng cơ sở dữ liệu và các mối quan hệ của chúng, loại bỏ sự dư thừa và phụ thuộc không nhất quán. Có một số quy tắc được xác định trước được thiết lập để chuẩn hóa. Những quy tắc đó được gọi là hình thức bình thường.
- Dạng Thông thường Đầu tiên (1NF)
- Dạng thông thường thứ hai (2NF)
- Dạng thông thường thứ ba (3NF)
- Boyce-Codd Dạng thông thường (BCNF hoặc 3.5NF)
- Dạng chuẩn thứ tư (4NF)
Dạng Chuẩn đầu tiên được gọi là tính nguyên tử của một bảng. Tính nguyên tử của bảng có thể đạt được từ hai bước.
- Xóa các cột trùng lặp khỏi cùng một bảng.
- Tạo các bảng riêng biệt cho các cột trùng lặp có liên quan. (phải có khóa chính để xác định từng hàng của bảng này)
Ở dạng chuẩn thứ hai, nỗ lực là giảm dữ liệu thừa trong bảng bằng cách trích xuất chúng và đặt chúng vào một bảng riêng biệt. Điều này có thể đạt được bằng cách thực hiện các bước sau.
- Chọn tập dữ liệu áp dụng cho nhiều hàng và đặt chúng vào các bảng riêng biệt.
- Tạo mối quan hệ giữa các bảng mới này và bảng mẹ bằng cách sử dụng khóa ngoại.
Để đưa cơ sở dữ liệu sang dạng chuẩn thứ ba, thì cơ sở dữ liệu phải đạt được ở dạng chuẩn thứ nhất và thứ hai. Khi cơ sở dữ liệu ở dạng 1NF và 2NF, không có bất kỳ cột nào trùng lặp và không có bất kỳ tập hợp con dữ liệu nào áp dụng cho nhiều hàng. Có thể đạt được dạng bình thường thứ ba bằng cách xóa các cột của bảng, các cột này không hoàn toàn phụ thuộc vào khóa chính.
Boyce-Codd Dạng thông thường (BCNF hoặc 3.5NF)
BCNF là viết tắt của “Boyce-Codd Normal Form”. Dạng chuẩn này còn được gọi là dạng chuẩn hóa cơ sở dữ liệu 3.5 Dạng chuẩn. Để đạt được BCNF, cơ sở dữ liệu phải đạt được ở dạng bình thường thứ ba. Sau đó, các bước sau cần được thực hiện để đạt được BCNF.
- Xác định tất cả các khóa ứng viên trong quan hệ
- Xác định tất cả các phụ thuộc hàm trong các quan hệ.
- Nếu có các phụ thuộc hàm trong quan hệ, trong đó các định thức của chúng không phải là khóa ứng viên cho quan hệ, hãy loại bỏ các phụ thuộc hàm bằng cách đặt chúng vào một quan hệ mới cùng với một bản sao của định thức của chúng.
Dạng Thường Thứ Tư
Cơ sở dữ liệu phải ở dạng bình thường thứ ba, trước khi chuẩn hoá nó thành dạng bình thường thứ tư. Nếu cơ sở dữ liệu đã ở dạng bình thường thứ ba, bước tiếp theo phải là loại bỏ các phụ thuộc nhiều giá trị. (Nếu một hoặc nhiều hàng ngụ ý sự hiện diện của một hoặc nhiều hàng khác trong cùng một bảng, nó được gọi là phụ thuộc nhiều giá trị.)
Sự khác biệt giữa BCNF và 4NF (Dạng chuẩn thứ tư) là gì?
• Cơ sở dữ liệu phải đạt đến 3NF để đưa nó đến BCNF, nhưng cơ sở dữ liệu phải ở 3NF và BCNF, để đạt 4NF.
• Ở dạng chuẩn thứ tư, không có bảng phụ thuộc nhiều giá trị, nhưng trong BCNF, có thể có dữ liệu phụ thuộc nhiều giá trị trong các bảng.