Hãy thử ngay!
Sức mạnh của cơ sở dữ liệu quan hệ nằm ở việc kết hợp dữ liệu trên các bảng. Để làm điều đó, trước tiên bạn cần thiết lập mối quan hệ giữa các bảng. Sau đó, đưa Access vào hoạt động để kết hợp dữ liệu trong các truy vấn, biểu mẫu và báo cáo.
Để xem tất cả các mối quan hệ hiện có được xác định cho cơ sở dữ liệu, hãy mở mẫu Access, đi tới tab Công cụ Cơ sở dữ liệu , rồi chọn Mối quan hệ.
Lưu ý
Nếu bạn mở một cơ sở dữ liệu trống hoặc chưa xác định được mối quan hệ bảng nào, Access sẽ nhắc bạn thêm một bảng hoặc truy vấn. Trước khi bạn có thể thêm mối quan hệ, bạn cần có ít nhất hai bảng. Tốt nhất là bạn nên xây dựng tất cả các bảng trước. Để tìm hiểu thêm, hãy xem Tạo mối quan hệ bằng Trình hướng dẫn Tra cứu và Tạo mối quan hệ với Ngăn Mối quan hệ.
Tìm hiểu về dạng xem Mối quan hệ
Các đường trong dạng xem Mối quan hệ biểu thị kết nối giữa các bảng. Trong hình ảnh sau đây, bảng bên trái là bảng mẹ. Bảng bên phải là bảng con. Đường giữa chúng kết nối các trường (trong trường hợp này là ID Đơn hàng và ID Sản phẩm) được dùng để khớp dữ liệu.
Đường và ký hiệu cho bạn thấy mối quan hệ giữa các bảng:
- Đường kết nối dày có nghĩa là bạn đang thực thi tính toàn vẹn dữ liệu tham chiếu. Điều đó tốt. Điều này giữ cho dữ liệu của bạn được đồng bộ hóa.
- Trong hình minh họa của chúng tôi, số 1 cho biết chỉ có thể có một bản ghi khớp trong bảng đó. Trong bảng Đơn hàng hiển thị ở đây, chỉ có một bản ghi khớp với mỗi đơn hàng.
- Ký hiệu ∞ cho biết nhiều bản ghi có thể bao gồm cùng một ID. Trong bảng Chi tiết Đơn hàng hiển thị ở đây, một đơn hàng (được biểu thị bằng ID đơn hàng) có thể xuất hiện nhiều lần, vì cùng một đơn hàng có thể bao gồm nhiều sản phẩm.
Các loại mối quan hệ giữa các bảng
Có ba loại mối quan hệ giữa các bảng:
- Một với một. Khi mỗi mục trong mỗi bảng chỉ xuất hiện một lần. Ví dụ: mỗi nhân viên chỉ có thể có một xe công ty để sử dụng. Để biết thêm thông tin, hãy xem mục Tạo quan hệ một đối một.
- Một với nhiều. Khi một mục trong một bảng có thể có mối quan hệ với nhiều mục trong bảng khác. Ví dụ: mỗi đơn đặt hàng có thể bao gồm nhiều sản phẩm.
- Nhiều-nhiều. Khi một hoặc nhiều mục trong một bảng có thể có mối quan hệ với một hoặc nhiều mục trong một bảng khác. Ví dụ: mỗi đơn hàng có thể có nhiều sản phẩm và mỗi sản phẩm có thể xuất hiện trên nhiều đơn hàng. Để tìm hiểu thêm, hãy xem Tạo mối quan hệ nhiều đối nhiều.
Mối quan hệ một đối nhiều
Một trong các mối quan hệ phổ biến nhất giữa các bảng trong cơ sở dữ liệu được thiết kế tốt là mối quan hệ một-nhiều.
Mối quan hệ giữa các bảng thường dựa trên khóa chính ở một trong các bảng. Hãy nhớ rằng khóa chính là một mã định danh duy nhất (thường là số) cho từng bản ghi. Để chứng minh rằng thông tin trong hai bảng khác nhau có liên quan với nhau, bạn thường tạo mối quan hệ bằng khóa chính từ một trong các bảng.
Trong mối quan hệ hiển thị ở đây, ví dụ: mỗi người trong bảng Danh bạ đều có một ID, là khóa chính (được biểu thị bằng ký hiệu khóa bên cạnh). ID đó cũng xuất hiện trong trường Chủ sở hữu ở bảng Tài sản. Để gửi email cho người được liên kết với tài sản, hãy lấy giá trị từ trường Địa chỉ Email. Để thực hiện việc này, hãy tìm giá trị trong trường Chủ sở hữu của bảng Tài sản, rồi tìm kiếm ID đó trong bảng Liên hệ. Số 1 ở một đầu của đường kết nối và biểu tượng ∞ ở đầu kia chỉ ra rằng đây là mối quan hệ một-nhiều, vì vậy một liên hệ có thể được liên kết với nhiều tài sản.
Chỉnh sửa mối quan hệ
Nếu bạn đang sửa đổi cơ sở dữ liệu hiện có hoặc nếu bạn đã tạo cơ sở dữ liệu từ mẫu, bạn có thể sửa các mối quan hệ hiện có để đáp ứng nhu cầu của mình.
Lưu ý
Nếu các bảng mà bạn muốn làm việc đang được sử dụng, trước tiên bạn phải đóng các bảng đó cùng với bất kỳ đối tượng mở nào sử dụng các bảng đó.
ChọnMối quan hệ Côngcụ> Cơ sở dữ liệu.
Chọn đường kết nối hai bảng có liên quan.
Mẹo
Nếu bạn không nhìn thấy mối quan hệ mong muốn, trên tab Thiết kế , trong nhóm Mối quan hệ , hãy chọn Tất cả Quan hệ.
Trên tab Thiết kế , chọn Chỉnh sửa Mối quan hệ.
Bảng/Truy vấn là bảng mẹ ở bên trái (trong ví dụ này là Khách hàng).
Bảng/Truy vấn Liên quan là bảng con (trong ví dụ này là Đơn hàng).
Ngay cả khi các bảng không xuất hiện theo thứ tự này trong dạng xem Mối quan hệ, vị trí của bảng trong hộp thoại sẽ cho biết hướng của đường kết nối chúng và mối quan hệ. Điều này quan trọng nếu đó là mối quan hệ một đối nhiều chẳng hạn, vì nó cho biết rằng bảng ở bên trái là một (bảng mẹ) và bảng ở bên phải là nhiều (bảng con).Để thay đổi các trường kết nối các bảng này, hãy chọn một trường khác bên dưới từng bảng được hiển thị. Trong ví dụ này, trường ID trong bảng Khách hàng kết nối với trường ID Khách hàng trong bảng Đơn hàng.
Thay đổi cách Access đồng bộ hóa dữ liệu của bạn giữa các bảng.
Thực thi tính toàn vẹn tham chiếu Để ngăn dữ liệu không hợp lệ và giữ cho các tham chiếu trong tình trạng đồng bộ trong các mối quan hệ bảng, hãy chọn tùy chọn này.
Ví dụ: giả sử bạn có mối quan hệ một đối một giữa các bảng Nhân viên và Phúc lợi của Nhân viên. Nếu một nhân viên rời khỏi công ty và bạn loại bỏ họ khỏi bảng Nhân viên, thì bản ghi nhân viên liên quan trong bảng Phúc lợi nhân viên cũng sẽ bị loại bỏ.
Đôi khi việc thực thi tính toàn vẹn tham chiếu không có ý nghĩa. Ví dụ: giả sử bạn có quan hệ một đối nhiều giữa bảng Công ty Vận tải Hàng hải và Đơn hàng. Bạn xóa một công ty vận tải hàng hải và công ty vận tải hàng hải đó ánh xạ đến các đơn hàng trong bảng Đơn hàng. Các đơn hàng đó trở thành mồ côi, nghĩa là chúng vẫn chứa ID Công ty Vận tải Hàng hải, nhưng ID đó không còn hợp lệ vì bảng ghi nó tham chiếu tới không còn tồn tại nữa.Cập nhật xếp tầng các trường liên quan Để đảm bảo rằng dữ liệu trong các trường liên quan được cập nhật trong tất cả các bảng liên quan, hãy chọn bảng này.
Ví dụ: giả sử bạn chỉ muốn thay đổi ID của một công ty vận tải. Việc đặt tùy chọn này sẽ đảm bảo rằng ID Công ty Vận tải Hàng hải được cập nhật — không chỉ trong bảng Công ty Vận tải Hàng hải mà còn trong các bảng khác được kết nối với bảng đó cũng bao gồm ID Công ty Vận tải đó, chẳng hạn như bảng Đơn hàng.Xóa xếp tầng các bản ghi liên quan Quyết định chọn tùy chọn này phụ thuộc vào việc bạn có cần giữ lại bản ghi trong một số bảng hay không, mặc dù chúng có thể bị xóa khỏi các bảng khác.
Ví dụ: giả sử bạn xóa một công ty vận tải. Nếu chọn tùy chọn này, Access sẽ xóa tất cả bản ghi trong tất cả các bảng tham chiếu đến ID Công ty vận tải đó, bao gồm tất cả đơn hàng (trong bảng Đơn hàng) do công ty vận tải đó vận chuyển. Bạn chỉ chọn tùy chọn này nếu chắc chắn muốn xóa lịch sử đơn hàng của mình.Để thay đổi mối quan hệ giữa các bảng từ nối trong sang nối ngoài, hãy chọn nút Loại Nối . Để biết thêm thông tin, hãy xem Tạo truy vấn với nối ngoài.
Xóa bỏ mối quan hệ bảng
Lưu ý
Nếu các bảng mà bạn muốn làm việc đang được sử dụng, trước tiên bạn phải đóng các bảng đó cùng với bất kỳ đối tượng mở nào sử dụng các bảng đó.
Để loại bỏ mối quan hệ bảng:
ChọnMối quan hệ Côngcụ> Cơ sở dữ liệu.
Chọn đường kết nối hai bảng có liên quan.
Mẹo
Nếu bạn không nhìn thấy mối quan hệ mong muốn, trên tab Thiết kế , trong nhóm Mối quan hệ , hãy chọn Tất cả Quan hệ.
Chọn phím Delete. Nếu bạn được nhắc xác minh rằng bạn muốn xóa mối quan hệ, hãy chọn Có.
Lưu ý
Khi bạn loại bỏ mối quan hệ, bạn cũng loại bỏ sự hỗ trợ tính toàn vẹn tham chiếu cho mối quan hệ đó, nếu có. Kết quả là Access sẽ không còn ngăn chặn các thay đổi dẫn đến bản ghi mồ côi ở nhiều bên trong mối quan hệ một-nhiều.