Mời các em cùng khám phá nội dung Bài 3: Liên kết các bảng trong cơ sở dữ liệu. Thông qua bài học này, các em sẽ biết được cách thiết lập đúng đắn mối quan hệ giữa các bảng trong một CSDL để kết nối dữ liệu giữa hai bản ghi từ hai bảng, tạo được CSDL có nhiều bảng và thiết lập được quan hệ giữa các bảng. HOC247 hy vọng rằng qua các bài học của chương trình Tin học 11 Tin học ứng dụng, các em sẽ thu thập những kiến thức hữu ích và thú vị, giúp nâng cao kiến thức về môn Tin học.
Tóm tắt lý thuyết
1.1. Thiết lập mối quan hệ giữa hai bảng
a) Các lựa chọn kết nối dữ liệu
- Thiết lập mối quan hệ giữa hai bảng nhằm mục đích nối (join) dữ liệu giữa hai bản ghi tương ứng trong mỗi bảng.
- Quan hệ \(1-\infty \) do phổ biến nhất giữa hai bảng có ba lựa chọn thuộc tính của phép nối dữ liệu (Join Properties) như trong Hình 1.
- Khi truy vấn lấy dữ liệu có yêu cầu nối các bản ghi từ hai bảng thì trong số các bản ghi đã thoả mãn điều kiện cần biết cách “nối” cụ thể.
1: Chỉ nối các bản ghi nếu các giá trị trường được kết nối trùng khớp nhau. Đây là phép nối trong (Inner join).
2: Lấy tất cả các bản ghi trong bảng bên trái nhưng chỉ nối với các bản ghi của bảng bên phải khớp giá trị trong trường được kết nối. Đây là phép nối ngoài bên trái (Left outer join).
.jpg)
Hình 1. Các lựa chọn kết nối dữ liệu
3: Ngược với tuỳ chọn 2:, lấy tất cả các bản ghi trong bảng bên phải nhưng chỉ nổi với các bản ghi của bảng bên trái khớp giá trị trong trường được kết nối. Đây là phép nối ngoài bên phải (Right outer join).
- Access đánh dấu lựa chọn 1: theo mặc định.
b) Thao tác thiết lập, chỉnh sửa, xoá mối quan hệ giữa hai bảng
- Chọn Database Tools\Relationships để mở vùng làm việc với các mối quan hệ.
- Access hiển thị trực quan mối quan hệ giữa hai bảng bằng một đoạn thẳng nối hai bảng, ghi kèm các cặp số \(1 – 1\) hay \(1-\infty \) ở hai đầu đoạn nối (Hình 2) nếu đã được thiết lập rõ ràng.
Chú ý rằng: Một bảng có thể liên kết với nhiều bảng khác.
.jpg)
Hình 2. Vùng làm việc với các mối quan hệ hiển thị các quan hệ hiện có
Quy trình thiết lập mối quan hệ giữa hai bảng có thể chia làm 3 bước lớn.
- Bước 1. Đưa hộp thể hiện mỗi bảng (Hình 2) vào vùng làm việc với các mối quan hệ (nếu trong đó còn chưa nhìn thấy bảng ta muốn);
1) Nháy nút lệnh Show Table. Hộp thoại Show Table xuất hiện.
2) Nháy đúp chuột lên tên bảng: Hộp thể hiện bảng sẽ xuất hiện.
- Bước 2. Tạo quan hệ giữa hai bảng:
1) Kéo thả chuột từ trường khoá ngoài trong bảng con vào trường khoá chính trong bảng mẹ; hộp thoại Edit Relationships xuất hiện (Hình 2).
2) Đánh dấu hộp kiểm Enforce Referential Integrity (đảm bảo toàn vẹn tham chiếu) và chọn Create hay OK.
- Bước 3. Xác định các lựa chọn liên kết dữ liệu:
1) Nháy nút Join Type để mở hộp thoại Join Properties (nếu chưa xuất hiện) để chọn thuộc tính cho phép nối dữ liệu thực thi mối quan hệ này.
2) Để nguyên như mặc định hoặc đánh dấu chọn thuộc tính kết nối đúng yêu cầu.
Chỉnh sửa mối quan hệ
1) Chọn mối quan hệ bằng cách nháy chuột lên đường nối hai bảng.
2) Nhảy nút lệnh Edit Relationship.
Xóa mối quan hệ
Nháy chuột chọn mối quan hệ, nhấn phím Delete.
Chú ý: Nháy chuột phải lên đường nối hai bảng cũng xuất hiện bảng chọn nối lên có hai lệnh Edit Relationship và Delete.
1.2. Cột dữ liệu từ tra cứu
- Sử dụng cột dữ liệu từ tra cứu giúp người dùng có thể chọn mục dữ liệu từ một danh sách thay cho gõ nhập.
- Việc nhập dữ liệu sẽ nhanh hơn và đảm bảo toàn vẹn tham chiếu (Hình 3).
.jpg)
Hình 3. Chọn để nhập Mã sách cho một bản ghi Mượn-Trả sách
Hướng dẫn thao tác
- Access có trình tiện ích Lookup Wizard giúp thiết lập mối quan hệ khoá ngoài và khoá chính giữa hai bảng (quan hệ \(\infty -1 \)) để cho phép nhập dữ liệu bằng cách chọn từ danh sách thả xuống.
- Ta sẽ thiết lập cột Số thẻ trong bảng Mượn-Trả thành cột dữ liệu từ tra cứu.
1) Mở bảng Mượn-Trả trong khung nhìn thiết kế.
2) Thiết lập lại Data Type của trường Số thẻ: Nháy dấu trỏ xuống để thả xuống danh sách chọn.
3) Nháy chọn Lookup Wizard (ở dòng cuối cùng) sẽ làm xuất hiện một loạt hộp thoại để đánh dấu các lựa chọn.
4) Hộp thoại thứ nhất (Hình 4a): Đánh dấu chọn “I want the lookup field to get the values from another table or query"; chọn Next.

Hình 4a. Chọn cột có sẵn từ bảng (truy vấn) khác
5) Hộp thoại thứ hai (Hình 4b) Chọn bảng hay truy vấn làm nguồn để tra cứu dữ liệu. Trong ví dụ này, đánh dấu chọn bảng Bạn Đọc; chọn Next.

b) Chọn bảng (truy vấn)
6) Hộp thoại thứ ba (Hình 4c): Chọn các trường dữ liệu trong bảng (hay truy vấn) vừa chọn. Trong ví dụ này, đánh dấu chọn trường Số thẻ (của bảng Bạn Đọc). Nháy dấu mũi tên “>” để chuyển nó sang Selected Fields, chọn Next.

c) Chọn các trường dữ liệu
7) Hộp thoại thứ tư để chọn trường muốn sắp xếp để tiện tra cứu. Trong ví dụ này, đó vẫn là trường Số thẻ vừa chọn, chọn trường Số thẻ và chọn Next.
8) Hộp thoại thử năm (Hình 4d): Đặt tên cho trường lookup. Ta giữ nguyên tên là Số thẻ; chọn Finish.

d) Đặt tên cho trường dữ liệu từ tra cứu
- Quan sát kết quả: Mở bảng trong khung nhìn bảng dữ liệu sẽ thấy có mũi tên trỏ xuống khi chọn ô để nhập dữ liệu cho trường Số thẻ. Từ đây thay vì gõ nhập có thể chọn từ danh sách tra cứu.
Thiết lập đảm bảo toàn vẹn tham chiếu
- Nháy chọn Database Tools\ Relationships sẽ thấy có đường nối giữa hai bảng Bạn đọc và Mượn-Trả hiển thị trực quan mối quan hệ tra cứu vừa thiết lập.
- Nháy chuột phải lên đường nối này; hộp thoại Edit Relationships xuất hiện. Đánh dấu hộp kiểm Enforce Referential Integrity và chọn OK.
1.3. Thực hành tạo liên kết giữa các bảng trong CSDL
Nhiệm vụ 1. Tạo bảng Mượn-Trả theo thiết kế và thử nhập dữ liệu
Các bước tạo bảng tương tự như trong bài học trước.
Chú ý:
1) Vẫn dùng khoá chính là ID như Access đã chọn mặc định.
2) Các cột Ngày mượn, Ngày Trả nên chọn thuộc tính Format phù hợp, ví dụ Short Date.
3) Nên hạn chế độ dài của các trường Số thẻ, Mã sách giống như ở các bảng Bạn Đọc, bảng Sách.
Nhiệm vụ 2. Thiết lập mối quan hệ và xác định thuộc tính kết nối dữ liệu giữa các bảng 1) Thiết lập mối quan hệ \(1-\infty \) từ bảng Sách và từ bảng Bạn Đọc tới bảng Mượn-Trả theo hướng dẫn trong mục “Thao tác thiết lập, chỉnh sửa, xoá mối quan hệ giữa hai bảng”.
2) Thiết lập cột Số thẻ và cột Mã sách thành kiểu dữ liệu tra cứu.
Chú ý: Có thể phải xoá kết quả của yêu cầu 1 và sau đó thiết lập lại thành cột tra cứu.
Bài tập minh họa
Cần mở cửa số làm việc nào để thiết lập, chỉnh sửa mỗi quan hệ giữa các bảng CSDL?
Hướng dẫn giải:
Để mở cửa sổ thiết lập, chỉnh sửa mối quan hệ giữa các bảng trong Microsoft Access, bạn cần mở cửa sổ Relationships theo từng bước như sau:
- Mở cơ sở dữ liệu Microsoft Access mà bạn muốn chỉnh sửa.
- Nhấp vào tab Database Tools trên thanh công cụ Ribbon.
- Nhấp vào nút Relationships trên tab Database Tools.
- Cửa sổ Relationships sẽ hiển thị các bảng trong cơ sở dữ liệu và các mối quan hệ giữa chúng.
- Để tạo mối quan hệ mới, bạn có thể kéo một trường từ một bảng và thả nó vào trường tương ứng trong bảng khác.
- Để chỉnh sửa mối quan hệ hiện có, bạn có thể nhấp đúp vào đường nối giữa các bảng.
Bạn có thể thay đổi loại mối quan hệ, cập nhật và xóa các mối quan hệ trong cửa sổ Relationships.
Lưu ý rằng để chỉnh sửa quan hệ trong Access, bạn cần phải có quyền truy cập vào cơ sở dữ liệu và quyền sửa đổi cấu trúc bảng.
3. Luyện tập Bài 3 Chủ đề FICT SGK Tin học 11 Cánh diều
Học xong bài này, em sẽ:
- Biết được cách thiết lập đúng đắn mối quan hệ giữa các bảng trong một CSDL để kết nối dữ liệu giữa hai bản ghi từ hai bảng.
- Tạo được CSDL có nhiều bảng.
- Thiết lập được quan hệ giữa các bảng.
3.1. Trắc nghiệm Bài 3 Chủ đề FICT SGK Tin học 11 Cánh diều
Như vậy là các em đã xem qua bài giảng Bài 3 Chủ đề FICT SGK Tin học 11 Cánh diều Tin học ứng dụng. Để củng cố kiến thức bài học mời các em tham gia bài tập trắc nghiệm Trắc nghiệm Tin học 11 Cánh Diều Chủ đề FICT Bài 3.
Câu 4-10: Mời các em đăng nhập xem tiếp nội dung và thi thử Online để củng cố kiến thức về bài học này nhé!
3.2. Bài tập Bài 3 Chủ đề FICT SGK Tin học 11 Cánh diều
Các em có thể xem thêm phần hướng dẫn Giải bài tập Tin học 11 Cánh Diều Chủ đề FICT Bài 3 để giúp các em nắm vững bài học và các phương pháp giải bài tập.
Khởi động trang 139 SGK Tin học 11 Cánh diều - CD
Hoạt động trang 139 SGK Tin học 11 Cánh diều - CD
Vận dụng trang 143 SGK Tin học 11 Cánh diều - CD
Câu hỏi 1 trang 143 SGK Tin học 11 Cánh diều - CD
Câu hỏi 2 trang 143 SGK Tin học 11 Cánh diều - CD
4. Hỏi đáp Bài 3 Chủ đề FICT SGK Tin học 11 Cánh diều
Trong quá trình học tập nếu có thắc mắc hay cần trợ giúp gì thì các em hãy comment ở mục Hỏi đáp, Cộng đồng Tin học của HOC247 sẽ hỗ trợ cho các em một cách nhanh chóng!
Chúc các em học tập tốt và luôn đạt thành tích cao trong học tập!
-- Mod Tin Học 11 HỌC247


