Site icon Blog Dương Trạng

Tìm hiểu về chuẩn hóa cơ sở dữ liệu

Tiêu chuẩn hóa cơ sở dữ liệu

Tiêu chuẩn hóa cơ sở dữ liệu là một kỹ thuật tổ chức dữ liệu trong cơ sở dữ liệu. Tiêu chuẩn hóa là một phương pháp có hệ thống để loại bỏ dữ liệu trùng lặp và các đặc điểm không mong muốn như thêm, cập nhật và xóa. Đó là quy trình có nhiều bước để chuyển dữ liệu vào dạng bảng và loại bỏ dữ liệu trùng lặp khỏi các bảng quan hệ.

Tiêu chuẩn hóa được sử dụng với hai mục đích chính:

Nếu không tuân theo tiêu chuẩn hóa, có một số vấn đề sẽ xảy ra. Nếu một bảng không được tiêu chuẩn hóa và chứa dữ liệu trùng lặp, nó sẽ tốn dung lượng bộ nhớ và gây khó khăn trong việc xử lí và cập nhật cơ sở dữ liệu, đồng thời có thể dẫn đến mất dữ liệu. Thêm vào đó, việc thêm, cập nhật và xóa dữ liệu sẽ trở nên không ổn định nếu không có tiêu chuẩn hóa. Để hiểu rõ hơn, hãy xem một ví dụ về bảng Sinh viên.

Trong ví dụ bảng trên, chúng ta thấy có 4 bản ghi. Như có thể nhìn thấy, dữ liệu trong hai cột “branch”, “hod” và “office_tel” được lặp lại cho các sinh viên cùng branch trong trường. Đây chính là dữ liệu trùng lặp.

Dữ liệu bất thường khi thêm

Giả sử khi một sinh viên mới nhập học, dữ liệu của sinh viên sẽ không thể được thêm nếu sinh viên không chọn một branch, nếu không chúng ta sẽ phải để thông tin về branch là NULL. Tương tự, nếu chúng ta phải thêm 100 sinh viên vào cùng một branch, thông tin về branch đó sẽ được lặp lại cho cả 100 sinh viên. Đây là một dạng bất thường khi thêm dữ liệu.

Dữ liệu bất thường khi cập nhật

Điều gì xảy ra khi Mr.X rời trường? Hoặc không còn là Trưởng khoa khoa học máy tính nữa? Trong trường hợp đó, tất cả các bản ghi sinh viên sẽ phải được cập nhật, và nếu chúng ta bỏ sót một số bản ghi do lỗi nào đó, nó sẽ dẫn đến xung đột dữ liệu. Đây là dạng bất thường khi cập nhật dữ liệu.

Dữ liệu bất thường khi xóa

Trong bảng Sinh viên, hai thông tin khác nhau được lưu trữ cùng nhau, thông tin Sinh viên và thông tin Khoa. Vì vậy, khi xóa các bản ghi sinh viên, chúng ta cũng sẽ mất thông tin về Khoa. Đây là dạng bất thường khi xóa dữ liệu.

Các nguyên tắc tiêu chuẩn hóa

Các nguyên tắc tiêu chuẩn hóa được chia thành các dạng sau:

  1. Một chuẩn hóa đầu tiên (1NF)
  2. Một chuẩn hóa thứ hai (2NF)
  3. Một chuẩn hóa thứ ba (3NF)
  4. Boyce và Codd Normal Form (BCNF)

Một chuẩn hóa đầu tiên (1NF)

Một bảng được coi là chuẩn 1NF nếu tuân theo 4 nguyên tắc sau:

Dưới đây là một ví dụ về chuẩn 1NF để dễ hiểu hơn, ta có bảng sau:

Trong bảng trên, các cột đều có tên duy nhất, dữ liệu được lưu trữ theo thứ tự và không trộn lẫn các loại dữ liệu khác nhau trong các cột. Tuy nhiên, trong 3 sinh viên, có 2 sinh viên chọn 3 môn học và môn học được lưu trong cùng một cột, vi phạm quy tắc các cột chỉ chứa giá trị duy nhất. Để giải quyết vấn đề này, chúng ta chỉ cần tách các giá trị thành các giá trị duy nhất.

Bằng cách làm như vậy, mặc dù một số giá trị được lặp lại, nhưng giá trị cho cột chủ đề hiện là nguyên tử cho mỗi bản ghi/hàng.

Một chuẩn hóa thứ hai (2NF)

Một bảng được coi là chuẩn 2NF nếu nó đã tuân thủ chuẩn 1NF và không có phụ thuộc riêng biệt. Dữ liệu ở dạng chuẩn 1NF có sự dư thừa nâng cao vì nhiều cột có cùng dữ liệu trong nhiều hàng, nhưng mỗi hàng lại là duy nhất.

Một chuẩn hóa thứ ba (3NF)

Một bảng được coi là chuẩn 3NF nếu nó đã tuân thủ chuẩn 2NF và không có phụ thuộc không cần thiết.

Boyce và Codd Normal Form (BCNF)

Boyce và Codd Normal Form (BCNF) là phiên bản cao hơn của 3NF. Chuẩn này liên quan đến một số loại dữ liệu bất thường không được xử lý bởi 3NF. Một bảng ở dạng 3NF không chứa các khóa ứng viên không cần thiết được coi là trong BCNF. Để một bảng đạt chuẩn BCNF, các điều kiện sau phải được thỏa mãn:

Exit mobile version