Bạn đang xem tài liệu “Giáo án môn Tin học 12 – Bài 8: Truy vấn dữ liệu”, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tiết thứ 24 Ngày soạn:11-11-2008 §8- TRUY VẤN DỮ LIỆU MỤC TIÊU Kiến thức: + Hiểu khái niệm mẫu hỏi, biết chức năng của mẩu hỏi. + Biết cách làm cơ bản và sử dụng hàm, biểu thức vào mẩu hỏi. + Biết các chế độ làm việc của mẩu hỏi. Kĩ năng: + Vận dụng một số hàm và phép toán tạo ra các biểu thức số học, biểu thức điều kiện và biểu thức logic để xây dựng mẫu hỏi. + Thao tác các bước chính để tạo một mẫu hỏi. + Sử dụng được hai chế độ: Thiết kế và trang dữ liệu Thái độ + Nghiêm túc- tập trung tốt cho bài học. PHƯƠNG PHÁP GIẢNG DẠY + Thuyết trình, hỏi đáp, đặt vấn đề, thao tác minh họa trên máy chiếu. CHUẨN BỊ GIÁO CỤ Giáo viên: SGK, SGV, máy chiếu Projector, một CSDL Bán hàng để minh họa gồm ba bảng: HOADON, HANG, KHACHHANG. Học sinh: SGK, vở soạn và vở ghi bài. TIẾN TRÌNH BÀI DẠY Ổn định lớp- Kiểm tra sĩ số: (1 phút) Lớp 12A 12B1 12B2 12B3 Sĩ số Kiểm tra bài cũ: ( không) Nội dung bài mới: Đặt vấn đề: (1 phút) Mẫu hỏi là một trong những công cụ quan trọng nhất trong CSDL để tổng hợp, sắp xếp và tìm kiếm dữ liệu, biến dữ liệu thô đang được lưu trữ thành những thông tin cần thiết. Mẩu hỏi tập hợp thông tin từ nhiều nguồn dữ liệu (bảng, mẫu hỏi đã xây dựng trước) và hoạt động như một bảng. Vậy thao tác với Mẩu hỏi như thế nào các em qua bài mới. Nội dung bài mới: HOẠT ĐỘNG CỦA THẦY VÀ TRÒ NỘI DUNG CƠ BẢN Hoạt đông 1: Tìm hiểu khái niệm mẩu hỏi. Gv: Trên thực tế khi quản lý HS ta thường có những yêu cầu khai thác thông tin bằng cách đặt câu hỏi (truy vấn): Tìm kiếm HS theo mã HS như thế nào? Tìm kiếm những HS có điểm TB cao nhất lớp? - Có nhiều dạng mẫu hỏi. Dạng thông thường nhất là mẫu hỏi chọn (Select Query). Khi thực hiện mẫu hỏi, dữ liệu được kết xuất vào một bảng kết quả, nó hoạt động như một bảng. Mỗi lần mở mẫu hỏi, Access lại tạo một bảng kết quả từ dữ liệu mới nhất của các bảng nguồn. Có thể chỉnh sửa, xóa, bổ sung dữ liệu vào các bảng thông qua bảng kết quả (bảng mẫu hỏi). Gv: Từ những phân tích trên em hãy cho biết Mẩu hỏi là gì? Hs: Dựa vào SGK trả lời. Gv: Vậy mẩu hỏi có những chức năng chính nào? Hs: Trả lời Hoạt động 2: Tìm hiểu Hàm và biểu thức. Gv: Để thực hiện các tính toán và kiểm tra các điều kiện, trong Access có công cụ để viết các biểu thức (biểu thức số học, biểu thức điều kiện và biểu thức lôgic). Gv: Trong tính toán chúng ta có những loại phép toán nào? Hs: Trả lời câu hỏi. Gv: Chúng ta dùng các phép toán trên để tính toán trên các toán hạng vậy trong Access các toán hạng là những đối tượng nào? Hs: Trả lời câu hỏi. Gv: Bên cạnh việc sử dụng các biểu thức số học thì Access cũng cho phép chúng ta sử dụng các biểu thức điều kiện và biểu thức logic. Gv: Có thể tiến hành gộp nhóm các bản ghi theo những điều kiện nào đó rồi thực hiện các phép tính trên từng nhóm này. Access cung cấp các hàm gộp nhóm thông dụng, trong đó có một số hàm thường dùng như : FF ÖÖèè Gv: Trong đó bốn hàm (SUM, AVG, MIN, MAX) chỉ thực hiện trên các trường kiểu số. Ta sẽ xem xét các bước tiến hành gộp nhóm tính tổng trong mục Ví dụ áp dụng. Hoạt đông 3: Tìm hiểu cách tạo mẩu hỏi. Gv: Để bắt đầu làm việc với mẫu hỏi, cần xuất hiện trang mẫu hỏi bằng cách nháy nhãn Queries trong bảng chọn đối tượng của cửa sổ CSDL. Có thể tạo mẫu hỏi bằng cách dùng thuật sĩ hay tự thiết kế. Gv: Thao tác các bước để hợc sinh quan sát sau đó yêu cầu học sinh nêu các bước tạo mẩu hỏi Lưu ý: Không nhất thiết phải thực hiện tất cả các bước này. Có hai chế độ thường dùng để làm việc với mẫu hỏi: chế độ thiết kế và chế độ trang dữ liệu. Trong chế độ thiết kế, ta có thể thiết kế mới hoặc xem hay sửa đổi thiết kế cũ của mẫu hỏi. Trên H. 36 là thanh công cụ thiết kế mẫu hỏi. Hình 36. Thanh công cụ thiết kế mẫu hỏi Hình 37. Mẫu hỏi Query_xem_diem_Ktra_Heso1 ở chế độ thiết kế Trên H. 37 trong SGK trang 44 đây chính là mẫu hỏi ở chế độ thiết kế. Cửa sổ gồm hai phần: Phần trên (nguồn dữ liệu) hiển thị cấu trúc các bảng (và các mẫu hỏi khác) có chứa các trường đưọc chọn để dùng trong mẫu hỏi này (muốn chọn trường nào thì nháy đúp vào trường đó, tên trường và tên bảng sẽ xuất hiện ở phần dưới). Phần dưới là lưới QBE (Query By Example – mẫu hỏi theo ví dụ), nơi mô tả mẫu hỏi. Mỗi cột thể hiển một trường sẽ được sử dụng trong mẫu hỏi. Dưới đây ta xét nội dung của từng hàng. Hình 38. Bảng HK1 và Mẫu hỏi Query_xem_diem_Ktra_Heso1 dạng trang dữ liệu Hoạt động 4: Ví dụ áp dụng: Gv: Ở trong phần VD này giáo viên nên thực hiện trên máy chiếu từng bước để giúp học sinh nắm bắt bài học tốt hơn. Nếu có điều kiện các phần này chúng ta nên thực hiện bài giảng trên phòng thực hành vi tính. 1.Các khái niệm a. Mẫu hỏi - Mẩu hỏi là một đối tượng của Access có chức năng tự động hóa việc trả lời câu hỏi do người dùng đặt ra đối với CSDL. - Một số khả năng của mẫu hỏi: + Sắp xếp các bản ghi theo một thứ tự nào đó; + Chọn các bảng cần thiết, những bản ghi thỏa mãn các điểu kiện cho trước; + Chọn một số trường cần thiết để hiển thị, thêm các trường mới gọi là trường tính toán (là kết quả thực hiện các phép toán trên các trường của bảng); + Thực hiện tính toán trên dữ liệu lấy ra như tính trung bình cộng, tính tổng từng loại, đếm các bản ghi thỏa điều kiện; + Tổng hợp và hiển thị thông tin từ một hoặc nhiều bảng, từ tập hợp các bảng và các mẫu hỏi khác. + Tạo bảng mới trên cơ sở dữ liệu đã được lấy vào mẫu hỏi; + Tạo biểu mẫu và báo cáo dựa trên mẫu hỏi; + Làm nguồn tạo mẫu hỏi khác b.Biểu thức - Các kí hiệu phép toán thường dùng bao gồm : + , – , * , / (phép toán số học) , =, =, (phép so sánh) AND, OR, NOT (phép toán logic) - Các toán hạng trong tất cả các biểu thức có thể là : + Tên các trường (đóng vai trò các biến) được ghi trong dấu ngoặc vuông, ví dụ : [GIOI_TINH], [LUONG], + Các hằng số, ví dụ : 0.1 ; 1000000, + Các hằng văn bản, được viết trong dấu nháy kép, ví dụ : “NAM”, “HANOI”, + Các hàm số (SUM, AVG, MAX, MIN, COUNT, ). - Biểu thức số học được sử dụng để mô tả các trường tính toán trong mẫu hỏi, mô tả này có cú pháp như sau: : Ví dụ : MAT_DO : [SO_DAN] / [DIENTICH] TIEN_THUONG : [LUONG] * 0.1 - Biểu thức điều kiện và biểu thức lôgic được sử dụng trong các trường hợp sau: + Thiết lập điều kiện kiểm tra dữ liệu nhập vào bảng + Thiết lập bộ lọc cho bảng khi thực hiện tìm kiếm và lọc trên một bảng. + Thiết lập điều kiện chọn lọc các bản ghi thỏa mãn để tạo mẫu hỏi. Ví dụ : Trong CSDL quản lí lương cán bộ có thể tìm các cán bộ là Nam, có lương cao hơn 1.000.000 bằng biểu thức lọc : [GIOITINH] = “NAM” AND [LUONG]>1000000 c. Các hàm SUM Tính tổng các giá trị. AVG Tính giá trị trung bình. MIN Tìm giá trị nhỏ nhất. MAX Tìm giá trị lớn nhất COUNT Đếm số giá trị khác trống (Null). 2.Tạo mẫu hỏi a. Các bước để tạo mẫu hỏi: B1: Chọn nguồn dữ liệu cho mẫu hỏi mới, gồm các bảng và các mẫu hỏi khác. B2: Chọn các trường từ nguồn dữ liệu để đưa vào mẫu hỏi mới. B3: Đưa ra các điều kiện để lọc các bản ghi đưa vào mẫu hỏi. B4: Xây dựng các trường tính toán từ các trường đã có. B5: Đặt điều kiện gộp nhóm. b. Để thiết kế mẫu hỏi mới: - Nháy đúp vào Create Query by using Wizard hoặc - Nháy đúp vào Create Query in Design View. Để xem hay sửa đổi mẫu hỏi đã có: 1.Chọn mẫu hỏi cần xem hoặc sửa. 2. Nháy nút . Trong đó : + Field : Khai báo tên các trường được chọn. Đó là các trường sẽ có mặt trong bộ bản ghi cần tạo ra, các trường dùng để lọc, xắp xếp, kiểm tra giá trị và thực hiện các phép tính hoặc tạo ra một trường tính toán mới. + Table : Tên các bảng chứa trường tương ứng. + Sort : Các ô chỉ ra có cần sắp xếp theo trường tương ứng không. + Show : Cho biết trường tương ứng có xuất hiện trong mẫu hỏi không. + Criteria : Mô tả điều kiện để chọn các bản ghi đưa vào mẫu hỏi. Các điều kiện được viết dưới dạng các biểu thức. Ví dụ : Trong bài toán “Quản lí điểm một môn”, có thể tạo một mẫu hỏi đnể tìm danh sách các học sinh có mã số từ 1 đến 10 và có tổng 4 bài kiểm tra 15 phút thấp hơn 20 điểm trong học kì 1, kết xuất từ hai bảng: LILICH và HK1 (các trường 1A1, 1A2, 1A3, 1A4 lưu các điểm kiểm tra 15 phút học kì 1): Trong phần lưới QBE gõ trên dòng Criteria tại cột MaSo gõ: >=1 AND <=10, tại cột Tong gõ : <20 (Xem H.37 và H.38). Để thực hiện gộp nhóm: cần làm xuất hiện hàng Total trong lưới QBE, nơi mô tả các điều kiện gộp nhóm và tính tổng bằng cách nháy vào nút (Total). Ta sẽ xem xét kĩ hơn việc mô tả này ở mục các ví dụ áp dụng. Trên trang mẫu hỏi, để chuyển mẫu hỏi sang chế độ trang dữ liệu, trong đó có thể xem các dữ liệu đã được chọn, ta chọn mẫu hỏi rồi nháy nút Open (). Khi đang ở chế độ thiết kế mẫu hỏi, ta cũng có thể chuyển sang chế độ trang dữ liệu bằng cách nháy nút trên thanh công cụ, hoặc chọn lệnh Datasheet View trong bảng View. 3.Ví dụ áp dụng: Ví dụ : Trong bài toán “Quản lí điểm một môn”, có thể tạo một mẫu hỏi để tìm danh sách các học sinh có mã số từ 1 đến 10 và có tổng 4 bài kiểm tra 15 phút thấp hơn 20 điểm trong học kì 1, kết xuất từ hai bảng: LILICH và HK1 (các trường 1A1, 1A2, 1A3, 1A4 lưu các điểm kiểm tra 15 phút học kì 1): Trong phần lưới QBE gõ trên dòng Criteria tại cột MaSo gõ: >=1 AND <=10, tại cột Tong gõ : <20 (Xem H.37 và H.38). 4-Cũng cố: (2 phút) Nhắc lại khái niệm mẫu hỏi, một số hàm và phép toán tạo ra các biểu thức số học, biểu thức điều kiện và biểu thức lôgic để xây dựng mẫu hỏi. Nhắc lại các bước chính để tạo một mẫu hỏi, cũng như hai chế độ: chế độ thiết kế và chế độ trang dữ liệu của mẫu hỏi. . 5- Nhiệm vụ về nhà: (1 phút) * Chuẩn bị trước bài TH6 * Bài tập về nhà: Hãy tạo CSDL Quản lý học sinh gồm các bảng HOCSINH, MONHOC, DIEM Với các thuộc tính thích hợp sau đó dùng biểu mẩu để: 1/ Tính điểm trung bình môn 2/ Tính điểm cao nhất, thấp nhất và bình quân