摘 要: 總計查詢是Access數據庫教學的重點。針對總計查詢中容易混淆的知識點,給出了一些教學案例,并且對教學案例進行了分析,介紹了總計查詢的教學設計過程。實踐證明,這些教學案例能夠提高總計查詢的教學效果。
關鍵詞: Access數據庫; 總計查詢; 教學設計; 教學案例
中圖分類號:G642 文獻標志碼:A 文章編號:1006-8228(2014)09-63-02
Teaching design of total query in Access database
Zhan Bin, Ning Bin, Zhao Yongbiao
(School of Mathematics and Computer Science, Hubei University of Arts and Science, Xiangyang, Hubei 441053, China)
Abstract: Total query is a key point in Access database teaching. Aiming at the knowledge points which are easy to be confused, several teaching cases are given and analyzed. Teaching design of total query is given. Practice shows that these teaching cases can improve the teaching effect of total query.
Key words: Access database; total query; teaching design; teaching case
0 引言
總計查詢是Access數據庫教學的重點,也是全國計算機等級考試(二級Access)的重點。針對學生在學習過程中容易混淆的知識點,需要給出恰當的教學案例,幫助學生正確、準確地使用總計查詢。本文介紹了總計查詢的教學設計過程。
1 教學背景
總計查詢的教學對象主要是文科類學生。在總計查詢教學之前,已經學習了不帶條件的查詢、帶條件的查詢和自定義計算。
2 教學目的
⑴ 理解什么是總計查詢。
⑵ 掌握總計查詢中計數、平均值、最大值、最小值、表達式和條件的使用,能夠利用總計查詢解決實際的問題。
3 教學方法及過程
案例教學模式是一種以案例分析討論為主線的教學方法,教學內容圍繞案例分析和討論逐步展開[1-2]。針對總計查詢中不容易理解的知識點給出了一組教學案例,并且對教學案例進行分析,幫助學生正確地理解和使用總計查詢。結合學生在學習過程中經常出現的錯誤,給出了錯誤案例,加深學生對知識點的理解[2]。
總計查詢也稱為預定義計算,可以對查詢中的全部記錄或記錄組計算一個或多個字段的統計值[3-4]。總計查詢的總計行包括12個選項,這里主要介紹計數、平均值、最大值、最小值、表達式和條件的使用。其中表達式和條件的使用是教學的難點。
3.1 針對所有記錄進行統計
學生表包括學號、姓名、性別、出生日期、民族、專業、所在院系、政治面貌、照片和備注字段。統計學生的人數。這個案例需要在查詢的設計網格中添加學號字段,設置其總計行為“計數”,就能夠統計所有學生的人數了[3]。
提出問題,學生表的其他字段能不能用來計數呢?例如姓名、性別、照片和備注等字段。
總計查詢在計數時不會去掉重復值,但是會忽略“空值”[5]。因此,如果有一個學生的性別字段值為“空”,那么用性別字段計數的結果就是不正確的。如果性別字段的字段值都不為空,那么計數的結果就是正確的。因此用來計數的字段應該是“必填”字段。
一般來說,學生表的學號字段是主鍵,主鍵默認為“必填”字段,然而學生表的其他字段的值有可能為“空”,因此在統計學生人數時建議使用“學號”字段。從這個案例中還可以認識到總計查詢可以對所有記錄進行統計。
3.2 針對記錄組進行統計
總計查詢還能夠針對記錄組進行統計。我們給出下面一組案例[3,6]:
⑴ 統計男女生的人數;
⑵ 統計各個專業男女生的人數;
⑶ 統計各個民族各個專業男女生的人數;
⑷ 統計男女生的人數和平均年齡;
⑸ 課程表包括課程號、課程名稱、學分和開課學期字段,成績表包括學號、課程號和考試成績字段,統計各門功課的平均分、最高分和最低分。
案例1需要1個分組字段。案例2需要2個分組字段,分別是專業和性別字段。案例3需要3個分組字段,分別是民族、專業和性別字段。案例4的統計字段有2個。案例5的考試成績字段被統計了3次,用來計算平均分、最高分和最低分。
通過上述5個案例,可以很容易地理解分組的含義,并且認識到分組字段可以有多個,統計字段也可以有多個,一個字段可以被統計多次[7]。
3.3 帶條件的總計查詢
統計男生的人數。
方法1 在查詢的設計網格中添加性別和學號2個字段。設置性別字段的總計行為“條件”,條件行為“男”,學號字段的總計行為“計數”[3]。
方法2 在查詢的設計網格中設置性別字段的總計行為“分組”,條件行為“男”,學號字段的總計行為“計數”[6]。
方法1是先篩選出男生的記錄,然后對男生的記錄進行計數。方法2是先把學生的記錄按照性別進行分組,統計出男女生的人數,但是由于性別字段的條件行為“男”,最后只顯示男生的人數。
當總計行為“條件”時,顯示方式只能是“不顯示”,所以,方法1的表視圖只顯示人數,而方法2既能顯示人數,又能顯示性別。
方法3 在查詢設計網格只添加性別字段,設置其總計行為“計數”,條件行為“[性別]=\"男\"”,查詢設計網格如圖1[6]所示。
方法3是先找出性別為男的記錄,然后再對符合條件的記錄進行計數。由于統計的是男生的人數,男生的性別字段值肯定不為“空”,因此用性別字段計數是正確的。
根據學生做試題時出現的錯誤,設計了一個錯誤案例,其查詢設計網格如圖2所示。
這個查詢設計網格似乎是正確的,但是在運行時系統提示“標準表達式中類型不匹配”。因為該查詢是先對性別進行計數,然后判斷計數的數值是否為“男”。數值是整數類型,而\"男\"是文本類型,因此這個設計是錯誤的。
通過這個錯誤案例可以加深學生對帶條件的總計查詢的認識。
3.4 總計查詢中表達式的使用
⑴ 統計20歲以上的學生人數[6]。
方法1 添加學號字段用來計數,由于學生表中沒有年齡字段,年齡字段必須通過計算得到,因此在查詢設計網格的字段行添加表達式“Year(Date())-Year([出生日期])”用來計算年齡,表達式的總計行設為“Expression”,條件行設為“>20”,顯示行設為“不顯示”[6]。
方法2 把方法1的查詢設計網格中表達式的總計行由“Expression”更改為“Where”。
方法3 在查詢的設計網格中只添加計算字段,查詢設計網格如圖3[6]所示。
方法3更簡單,字段行只添加了一個計算字段,但是必須在表達式前面加上字段名稱,否則運行時系統提示“Year(Date())-Year([出生日期])之計數不是一個有效名稱”。
通過這個案例讓學生掌握表達式的使用。
⑵ 統計各門課程最高分與最低分的差值[6]。
這個案例需要添加計算字段“差值: Max([考試成績])-Min([考試成績])” [6]。這個案例說明計算字段的表達式中可以使用聚合函數。常用的聚合函數包括:sum、avg、count、max和min函數。
此時提出問題:能否用表達式統計學生的人數?
在查詢設計網格的字段行添加表達式“人數:Count([學號])”,其總計行設置為“Expression”,也可以統計學生的人數。
4 教學特點總結
本教學設計對每個知識點設計了相應的教學案例,對同一問題給出多種解決方法,并且分析了每種方法的特點,通過對比分析這些方法的應用,能夠加深學生對知識點的理解,提高判斷錯誤并正確和準確解決實際問題的能力。
5 結束語
實踐證明,上述教學案例能夠幫助學生正確地理解和使用總計查詢,提高總計查詢的教學效果。
參考文獻:
[1] 雷海艷.淺談現代案例教學模式[J].長春理工大學學報(社會科學版),
2007.1:28-30
[2] 丁海燕,袁國武,周小兵,白孟堯.高級語言程序設計案例教學模式的
探討[J].計算機教育,2011.8:65-68
[3] 劉衛國主編.Access數據庫基礎與應用[M].北京郵電大學出版社,
2013.
[4] 葉建良.ACCESS的總計查詢及其解題淺析[J].電腦知識與技術,
2009.8:1811-1812,1816
[5] 戚娜.Access數據庫中查詢淺析[J].計算機光盤軟件與應用,
2013.21:23-24
[6] 全國計算機等級考試命題研究中心編著.全國計算機等級考試上機
考試題庫二級Access[M].電子工業出版社,2013.
[7] 詹彬,谷瓊.Access數據庫查詢教學中的知識點分析[J].計算機時代,
2011.11:46-47,50