MS Access - Mối quan hệ Nhiều - Nhiều
Trong chương này, chúng ta hãy hiểu Mối quan hệ Nhiều-Nhiều. Để biểu diễn mối quan hệ nhiều-nhiều, bạn phải tạo một bảng thứ ba, thường được gọi là bảng nối, chia nhỏ mối quan hệ nhiều-nhiều thành hai mối quan hệ một-nhiều. Để làm như vậy, chúng ta cũng cần thêm một bảng nối. Trước tiên hãy để chúng tôi thêm một bảng kháctblAuthers.
Bây giờ chúng ta hãy tạo một many-to-many relationship. Chúng tôi có nhiều hơn một tác giả làm việc trên nhiều dự án và ngược lại. Như bạn đã biết, chúng tôi có trường Tác giả trong tblProjects, vì vậy, chúng tôi đã tạo một bảng cho nó. Chúng tôi không cần lĩnh vực này nữa.
Chọn trường Tác giả và nhấn nút xóa và bạn sẽ thấy thông báo sau.
Nhấp chuột Yes. Bây giờ chúng ta sẽ phải tạo một bảng nối. Bảng nối này có hai khóa ngoại trong đó như thể hiện trong ảnh chụp màn hình sau.
Các trường khóa ngoại này sẽ là khóa chính từ hai bảng được liên kết với nhau - tblAuthers và tblProjects.
Để tạo khóa tổng hợp trong Access, hãy chọn cả hai trường này và từ table tools design , bạn có thể nhấp trực tiếp vào khóa chính đó và sẽ không đánh dấu một mà là cả hai trường này.
Sự kết hợp của hai trường này là tables’ unique identifier. Bây giờ chúng ta hãy lưu bảng này dưới dạngtblAuthorJunction.
Bước cuối cùng để gắn kết các mối quan hệ nhiều-nhiều lại với nhau là quay trở lại relationships view và tạo các mối quan hệ đó bằng cách nhấp vào Show Table.
Chọn ba bảng được đánh dấu ở trên và nhấp vào nút Thêm rồi đóng hộp thoại này.
Nhấp và kéo AuthorID lĩnh vực từ tblAuthors và đặt nó trên đầu trang của tblAuthorJunction bàn AuthorID.
Mối quan hệ bạn đang tạo là mối quan hệ mà Access sẽ coi là mối quan hệ một - nhiều. Chúng tôi cũng sẽ thực thi tính toàn vẹn tham chiếu. Bây giờ hãy để chúng tôi bậtCascade Update và nhấp vào Create như trong ảnh chụp màn hình ở trên.
Bây giờ hãy để chúng tôi nắm giữ ProjectID, kéo và thả nó ngay trên đầu ProjectID từ tblAuthorJunction.
Chúng tôi sẽ Enforce Referential Integrity và Cascade Update Related Fields.
Sau đây là các mối quan hệ nhiều-nhiều.