Khởi động
Khi một bạn đọc mượn sách, thủ thư cần ghi lại những thông tin gì? Có một bảng nào trong CSDL chứa đầy đủ những thông tin này hay không?
Dựa vào thực tế tại thư viện ở trường.
Khi một bạn đọc mượn sách, thủ thư cần ghi lại những thông tin sau:
- Thông tin về bạn đọc: Tên bạn đọc, số thẻ thư viện, thông tin liên lạc (địa chỉ, số điện thoại, email).
- Thông tin về sách mượn: Tên sách, tác giả, mã số sách (nếu có).
- Ngày mượn: Ngày mà sách được mượn.
- Ngày trả dự kiến: Ngày dự kiến mà sách nên được trả.
- Ngày trả thực tế: Ngày mà sách được trả (khi bạn đọc trả sách).
- Tình trạng sách: Tình trạng sách khi bạn đọc mượn (ví dụ: mới, hư hỏng, v.v.).
Thông tin này có thể được lưu trữ trong một bảng trong cơ sở dữ liệu của thư viện. Bảng này thường được gọi là “Bảng Mượn sách” hoặc tương tự. Nó chứa đầy đủ thông tin về việc mượn và trả sách. Cơ sở dữ liệu này giúp thủ thư và nhân viên thư viện quản lý việc mượn sách, tìm kiếm thông tin, xử lý các trường hợp mất sách hoặc trả sách muộn, và theo dõi tổng quan của hoạt động mượn sách trong thư viện.
Câu hỏi (?) mục 1 Hoạt động (HĐ)
Em đã học về quan hệ giữa bảng và khoá ngoài trong CSDL quan hệ. Em hãy cho biết khoá ngoại của một bảng là gì và ràng buộc khoá ngoại là gì?
Dựa vào kiến thức đã học
Khóa ngooài của một bảng được xem như con trỏ trỏ tới khóa chính của bảng khác. Ràng buộc FOREIGN KEY hay khóa ngoài được sử dụng để ngăn các hành động sẽ làm hủy bỏ liên kết giữa các bảng. Một FOREIGN KEY là một trường (hoặc tập hợp các trường) trong một bảng, đề cập đến PRIMARY KEY trong một bảng khác.
Vận dụng
Theo em nếu như CSDL của trường có bảng Học sinh và đã thiết lập quan hệ 1-1 giữa hai bảng Bạn Đọc và Học sinh thì có thể thiết lập kiểu dữ liệu tra cứu để không phải gõ nhập lại dữ liệu những cột nào trong bảng Bạn Đọc.
Dựa vào kiến thức đã học để trả lời câu hỏi.
Nếu CSDL của trường có bảng “Học sinh” và đã thiết lập quan hệ 1-1 giữa hai bảng “Bạn Đọc” và “Học sinh”, bạn có thể thiết lập kiểu dữ liệu tra cứu để không phải nhập lại dữ liệu cho những cột liên quan trong bảng “Bạn Đọc”.
Cách tiếp cận phổ biến là sử dụng các trường khóa ngoại (foreign key) để tạo quan hệ giữa hai bảng. Trong trường hợp này, bảng “Học sinh” sẽ chứa thông tin chi tiết về học sinh và bảng “Bạn Đọc” sẽ chứa thông tin tổng quan về bạn đọc, bao gồm khóa ngoại trỏ tới bảng “Học sinh”. Với việc thiết lập quan hệ này, bạn có thể sử dụng khóa ngoại để tra cứu thông tin từ bảng “Học sinh” và tự động điền vào các cột liên quan trong bảng “Bạn Đọc” khi cần thiết.
Advertisements (Quảng cáo)
Ví dụ, trong bảng “Bạn Đọc”, bạn có một cột là “ID_HocSinh” là khóa ngoại trỏ tới cột "ID” trong bảng “Học sinh”. Khi người dùng chọn một học sinh từ danh sách, bạn có thể sử dụng khóa ngoại để tự động điền thông tin liên quan từ bảng “Học sinh” vào các cột như tên, địa chỉ, số điện thoại, vv. trong bảng “Bạn Đọc”.
Điều này giúp giảm việc nhập liệu trùng lặp và đảm bảo tính nhất quán dữ liệu giữa hai bảng. Bạn cũng có thể tận dụng các tính năng của CSDL để tạo liên kết tự động giữa các bảng và thực hiện tra cứu dữ liệu thông qua các truy vấn SQL hoặc các chức năng trong hệ quản trị CSDL.
Luyện tập 1
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?
Dựa vào kiến thức đã học để trả lời câu hỏ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, 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.
Luyện tập 2
Để thiết lập kiểu dữ liệu từ tra cứu cần thao tác như thế nào?
Dựa vào kiến thức đã học để trả lời câu hỏi.
Để thiết lập kiểu dữ liệu tra cứu trong quan hệ 1-1 giữa hai bảng “Bạn Đọc” và “Học sinh”, bạn cần thực hiện các bước sau:
Tạo bảng “Học sinh”: Tạo bảng “Học sinh” với các cột chứa thông tin chi tiết về học sinh, bao gồm cột ID (khóa chính), tên, địa chỉ, số điện thoại, và các thông tin khác liên quan.
Tạo bảng “Bạn Đọc”: Tạo bảng “Bạn Đọc” với các cột chứa thông tin tổng quan về bạn đọc, bao gồm cột ID (khóa chính), cột ID_HocSinh (khóa ngoại trỏ tới cột ID trong bảng “Học sinh”), và các cột khác như ngày mượn sách, tình trạng sách, vv.
Thiết lập quan hệ giữa hai bảng: Trong bảng “Bạn Đọc”, thiết lập cột ID_HocSinh là khóa ngoại trỏ tới cột ID trong bảng “Học sinh”. Điều này sẽ tạo quan hệ 1-1 giữa hai bảng.
Tạo liên kết tự động: Thiết lập liên kết tự động giữa các cột liên quan trong hai bảng. Ví dụ, bạn có thể sử dụng các tính năng như “Foreign Key Constraints” (Ràng buộc khóa ngoài) để đảm bảo tính nhất quán dữ liệu giữa các cột.
Tra cứu dữ liệu: Khi người dùng chọn một học sinh từ danh sách, bạn có thể sử dụng khóa ngoại ID_HocSinh để tự động điền thông tin liên quan từ bảng “Học sinh” vào các cột trong bảng “Bạn Đọc”.