Kết quả thực hiện mẫu hỏi có thể tham gia vào việc tạo ra gì?

Trả lời nhanh

Kết quả thực hiện mẫu hỏi (query) có thể tham gia vào việc tạo ra biểu mẫu (form), báo cáo (report) và cả những mẫu hỏi khác. Lí do: mẫu hỏi trả về một tập bản ghi đã được lọc, sắp xếp hoặc tính toán, nên có thể dùng như một “bảng ảo” làm nguồn dữ liệu cho các đối tượng này. Nếu đề chỉ cho một chỗ trống, hãy ưu tiên đáp án nhắc đến biểu mẫu và báo cáo.

Mẫu hỏi làm gì trong cơ sở dữ liệu?

Mẫu hỏi là đối tượng cho phép ta đặt câu hỏi với dữ liệu, ví dụ: “Học sinh nào có điểm Toán từ 8 trở lên?”. Hệ quản trị cơ sở dữ liệu (như Microsoft Access) thực hiện câu hỏi đó và trả về một bảng kết quả. Dữ liệu gốc vẫn nằm trong bảng, còn kết quả chỉ là một “lát cắt” được tạo ra khi cần.

Một mẫu hỏi có thể gồm các thành phần: nguồn dữ liệu (một hoặc nhiều bảng), các trường cần hiển thị, điều kiện lọc, cách sắp xếp và các trường tính toán.

Ba nơi dùng kết quả của mẫu hỏi

Sơ đồ kết quả thực hiện mẫu hỏi tham gia tạo biểu mẫu, báo cáo và mẫu hỏi khác
Hình 1. Kết quả của mẫu hỏi làm nguồn dữ liệu cho biểu mẫu, báo cáo và mẫu hỏi khác.
  1. Biểu mẫu: khi tạo biểu mẫu, ta có thể chọn mẫu hỏi làm nguồn thay cho bảng. Biểu mẫu khi đó chỉ hiển thị những bản ghi thoả điều kiện, ví dụ danh sách học sinh giỏi.
  2. Báo cáo: báo cáo cần dữ liệu đã chọn lọc, nhóm và tính tổng. Dùng mẫu hỏi làm nguồn giúp báo cáo gọn, chỉ có phần cần in.
  3. Mẫu hỏi khác: một mẫu hỏi có thể lấy kết quả của mẫu hỏi trước làm nguồn, giúp chia một yêu cầu phức tạp thành nhiều bước đơn giản.

Vì sao không phải là tạo ra bảng gốc?

Có đề đưa phương án “bảng” để gây nhiễu. Về nguyên tắc, mẫu hỏi không thay đổi cấu trúc của bảng gốc. Kết quả của mẫu hỏi thông thường (truy vấn chọn) chỉ là tập dữ liệu tạm thời, nên nó không phải là nơi lưu trữ chính. Chỉ khi dùng các loại mẫu hỏi riêng như tạo bảng (make-table) thì mới sinh ra một bảng mới, và đó là một chức năng đặc biệt chứ không phải bản chất của mọi mẫu hỏi.

Ví dụ minh hoạ

Yêu cầu Mẫu hỏi Dùng kết quả để
In danh sách học sinh lớp 12A1 chưa nộp học phí Lọc theo lớp và trạng thái học phí Tạo báo cáo để in
Nhập nhanh thông tin cho học sinh thuộc tổ Toán Lọc theo tổ bộ môn Tạo biểu mẫu nhập liệu
Tính điểm trung bình theo lớp, rồi chọn lớp trên 8,0 Mẫu hỏi 1 tính trung bình, mẫu hỏi 2 lọc Dùng mẫu hỏi làm nguồn cho mẫu hỏi khác

Lỗi sai thường gặp

  • Nghĩ rằng mẫu hỏi sửa trực tiếp cấu trúc bảng (thêm hoặc bớt trường). Đó là việc của chế độ thiết kế bảng.
  • Nhầm mẫu hỏi với biểu mẫu: mẫu hỏi để lấy dữ liệu, biểu mẫu để nhập hoặc xem từng bản ghi.
  • Quên rằng nếu dữ liệu trong bảng đổi, kết quả mẫu hỏi sẽ tự cập nhật khi chạy lại.

Mẹo nhớ

“Bảng chứa, mẫu hỏi lọc, biểu mẫu nhập, báo cáo in”. Mẫu hỏi đứng giữa bảng và hai đối tượng xuất ra phía sau.

Luyện tập

  1. Muốn in danh sách các khách hàng ở Hà Nội với tổng tiền mua hàng, ta nên dùng đối tượng nào làm nguồn cho báo cáo? Đáp án: mẫu hỏi có điều kiện lọc theo địa chỉ và trường tính tổng.
  2. Kết quả của mẫu hỏi có lưu cố định trong cơ sở dữ liệu không? Đáp án: với mẫu hỏi chọn thông thường thì không, nó được tạo lại mỗi lần chạy.
  3. Nêu một tình huống dùng mẫu hỏi làm nguồn cho biểu mẫu. Đáp án gợi ý: biểu mẫu chỉ hiện các đơn hàng chưa giao.

Câu hỏi thường gặp

Kết quả thực hiện mẫu hỏi có thể tạo ra những gì?

Có thể dùng làm nguồn dữ liệu cho biểu mẫu, báo cáo và các mẫu hỏi khác; riêng mẫu hỏi tạo bảng còn có thể sinh ra một bảng mới.

Mẫu hỏi có làm thay đổi dữ liệu trong bảng không?

Mẫu hỏi chọn thông thường chỉ đọc và hiển thị dữ liệu, không làm thay đổi bảng gốc. Chỉ các loại mẫu hỏi hành động (cập nhật, xoá, thêm) mới sửa dữ liệu.

Khác nhau giữa mẫu hỏi và biểu mẫu là gì?

Mẫu hỏi dùng để lọc, sắp xếp, tính toán dữ liệu; biểu mẫu dùng để nhập, xem hoặc sửa từng bản ghi qua giao diện thân thiện.