Chuẩn hóa cơ sở dữ liệu trong Access - Mối quan hệ giữa các bảng
Trong bài viết này, Quantrimang.com sẽ cùng bạn tìm hiểu về Chuẩn hóa cơ sở dữ liệu và tổng quan về mối quan hệ, sự liên kết dữ liệu giữa các bảng.
Chuẩn hóa cơ sở dữ liệu
Chuẩn hóa cơ sở dữ liệu (Database Normalization) là quá trình tổ chức các cột (thuộc tính) và bảng (quan hệ) của cơ sở dữ liệu quan hệ sao cho hợp lý để giảm thiểu dư thừa dữ liệu.
Quá trình này phân chia dữ liệu trên nhiều bảng để cải thiện hiệu suất tổng thể, tính toàn vẹn và tuổi thọ của database.
Tóm lại, bạn có thể hiểu:
- Chuẩn hóa là quá trình tổ chức dữ liệu trong cơ sở dữ liệu.
- Quá trình bao gồm tạo các bảng và thiết lập mối quan hệ giữa các bảng theo các quy tắc được thiết kế để bảo vệ dữ liệu, giúp cơ sở dữ liệu linh hoạt hơn bằng cách loại bỏ sự dư thừa và phụ thuộc không nhất quán.
Ví dụ:
Bạn hãy theo dõi bảng ở ví dụ này, dữ liệu ở đây có thể đánh giá là dư thừa, có nhiều khả năng đánh máy nhầm và phát sinh các lỗi không nhất quán trong quá trình nhập liệu
IDKH | Ten | Diachi | TenSanPham | Soluong | Gia | Tongtien |
1 | Bui Thu | 56 Duy Tan, Cau Giay, Ha Noi | Chocolate Chip | 5 | $2.00 | $10.00 |
2 | Tran Oanh | 12 Khuat Duy Tien., Thanh Xuan Bac, Thanh Xuan, Ha Noi | Choc Chip | 3 | $2.00 | $6.00 |
3 | Le Quyen | 56 Duy Tan., Q Cau Giay, Ha Noi | Chocolate Chip | 5 | $2.00 | $10.00 |
Để giải quyết vấn đề này, chúng ta cần cơ cấu lại dữ liệu của mình và chia nó thành nhiều bảng để loại bỏ một số dư thừa như trong ba bảng sau.
Ở đây, ta có 1 bảng dành cho Khách hàng, 1 bảng Sản phẩm và 1 bảng Order (Đơn hàng).
Nếu chỉ chia dữ liệu ra nhiều bảng cho đơn giản thì cũng chưa thể thực hiện được gì vì các bảng chưa liên kết với nhau, chưa có cách nào để dữ liệu của bảng này liên quan đến bảng kia. Để làm được việc kết nối dữ liệu trong nhiều bảng này, bạn sẽ phải cần thêm các Khóa ngoại - Foreign Key vào bảng Order.
Xác định mối quan hệ giữa các bảng
Mối quan hệ (Relationship) giữa các bảng hoạt động bằng cách khớp dữ liệu trong các cột, thường là các cột cùng tên, có mặt trong cả hai bảng. Cột khóa chính trong bảng sẽ cung cấp một ID duy nhất cho mỗi bản ghi (mỗi hàng) và là khóa ngoại trong bảng khác.
Có 3 kiểu thiết lập mối quan hệ:
Quan hệ 1-1
Quan hệ 1-1 là quan hệ giữa hai bảng mà một bản ghi của bảng A quan hệ duy nhất với một bản ghi của bảng B và ngược lại.
Mối quan hệ một đối một được tạo ra khi cả hai trường kết nối là khóa chính hoặc có các ràng buộc duy nhất.
Kiểu quan hệ này không phổ biến. Bạn có thể sử dụng mối quan hệ 1-1 trong các trường hợp sau:
- Chia một bảng thành nhiều cột.
- Cô lập một phần của bảng vì lý do bảo mật.
- Lưu trữ dữ liệu tồn tại trong thời gian ngắn và có thể dễ dàng xóa bằng cách xóa bảng.
- Lưu trữ thông tin chỉ áp dụng cho một tập hợp con của bảng chính.
Quan hệ 1-n (một-nhiều)
Quan hệ 1-n là loại quan hệ phổ biến nhất.Trong mối quan hệ này, một bản ghi trong bảng A có thể có nhiều bản ghi phù hợp trong bảng B, nhưng một bản ghi trong bảng B chỉ có một bản ghi phù hợp trong bảng A. Cũng có thể hiểu, khóa chính trong bảng A có thể được sao chép nhiều lần trong bảng khác.
Ví dụ: bảng Khách hàng và Đơn hàng có mối quan hệ một-nhiều: mỗi khách hàng có thể đặt nhiều đơn hàng, nhưng mỗi đơn hàng chỉ đến từ một khách hàng.
Quan hệ n-n (nhiều-nhiều)
Quan hệ n-n là quan hệ giữa hai bảng mà một bản ghi của bảng A có thể có nhiều bản ghi phù hợp trong bảng B và ngược lại.
Để tạo mối quan hệ như vậy, hãy xác định bảng thứ ba, được gọi là bảng nối, có khóa chính bao gồm các khóa ngoại từ cả bảng A và bảng B.
Ví dụ: bảng Khách hàng và bảng Sản phẩm có mối quan hệ n-n được xác định bởi mối quan hệ 1-n từ chúng tới bảng Đơn hàng.
Bài trước: Tiêu chí thay thế (Alternate Criteria) trong Access 2016
Bạn nên đọc
-
Mối quan hệ 1-n giữa các bảng trong Access
-
Cách cập nhật Microsoft Office lên phiên bản mới nhất
-
Hướng dẫn cài đặt và sử dụng Office 2016
-
Protected View là gì? Cách bật, tắt tính năng Protected View trong Office 2016/2019/2021
-
Apple, Google, Microsoft, Facebook và Twitter sẽ cùng tham gia vào một dự án chia sẻ dữ liệu chung với quy mô cực lớn
-
Microsoft Access là gì?
-
Cách xuất dữ liệu Microsoft Access sang tài liệu Word
-
Thiết lập Tiêu chí truy vấn (Query Criteria) trong Access 2016
Cũ vẫn chất
-
Hướng dẫn chuyển sang ngôn ngữ tiếng Việt cho Gmail
Hôm qua -
Cách xóa khoảng trắng giữa các chữ trong Word
Hôm qua -
Code LaLa Land Lục Địa Bí Ẩn mới nhất và cách nhập code
Hôm qua 2 -
‘Ghét’ Apple, Mark Zuckerberg vẫn phải dùng Macbook nhưng nó lạ lắm
Hôm qua 1 -
Hướng dẫn toàn tập Word 2016 (Phần 26): Tạo đồ họa SmartArt
Hôm qua -
Những câu nói hay về mùa thu, lời chào mùa thu hay và ý nghĩa
Hôm qua -
70 câu ca dao, tục ngữ về học tập hay nhất
Hôm qua -
Cách sao chép định dạng trong Google Docs, Sheets và Slides
Hôm qua -
Cách xóa số liên hệ trên Telegram
Hôm qua -
Bạn đã sử dụng keo tản nhiệt đúng cách?
Hôm qua