摘 要: 全國計算機等級考試(NCRE)是目前我國規模最大的計算機類考試,每年都有幾十萬人參加不同級別的考試。本文結合實際考試情況,分析了在二級Visual FoxPro上機考試中最常見的考題類型、考試范圍及其解題方法。
關鍵詞: 全國計算機等級考試 二級VFP上機考試 基本操作題 簡單應用題 綜合應用題
1.引言
隨著計算機技術在我國各個領域不斷的推廣和普及,越來越多的人開始學習計算機知識,操作和應用計算機成為人們必須掌握的一種基本技能。許多單位部門已把掌握一定的計算機知識和應用技能作為干部錄用、職務晉升、職稱評定、上崗資格的重要依據之一[2]。
1994年原國家教委考試中心開始向社會推出“全國計算機等級考試(NCRE)”,到2011年上半年共進行了33次考試,從最初科目較為單一的考試,發展到了目前的四個等級17個科目的考試,是目前國內規模最大的計算機類考試。2001年二級Foxbase考試科目被二級Visual FoxPro取代,二級Visual FoxPro考試成為歷次考試報考人數最多的科目。
全國計算機等級考試二級Visual FoxPro數據庫程序設計考試,分筆試和上機考試兩個部分。上機操作是檢驗考生對VFP數據庫管理系統的應用水平,要求考生能夠熟練地利用VFP平臺進行數據庫及相關的操作。一共有三個大題,第一題是基本操作題,主要內容涉及項目、數據庫、數據庫表的建立和修改等操作;第二題是簡單應用題,主要考查考生對數據庫表查詢、表單的基本應用、菜單的操作、報表的應用等方面的能力;第三題是綜合應用題,主要考查考生系統地完整地對某個項目的設計,主要集中在表單和菜單的應用方面。
2.基本操作題
基本操作題通常有4個小題,主要考查學生對VFP的一些基礎性的操作,基本覆蓋范圍如下。
?。?)項目文件的建立,項目管理器的使用,將數據庫添加到項目中;
?。?)數據庫文件的建立,在數據庫中建立新表,將自由表添加到數據庫中,將數據庫表移除或刪除;
?。?)視圖的建立與刪除,查詢的創建與刪除;
?。?)數據庫表中字段有效性規則的建立,字段默認值的設置,設置完整性約束,主索引和普通索引的建立,為已建立索引的表建立永久聯系,表中字段的增、刪、改,向表中添加記錄;
?。?)菜單和快捷菜單的建立,為菜單項建立快捷鍵;
?。?)SQL查詢語句的使用,查詢去向、統計;
(7)利用報表向導建立報表;
?。?)表單的建立,表單屬性的設置,表單布局工具欄的使用,向表單中添加控件對象,數據環境的設置,命令按鈕屬性的設置,使用自定義類,文本框屬性的設置,事件代碼的編寫,修改事件代碼或程序文件中的程序語句。
例1.基本操作題(共四小題)。在考生文件夾下已有customers(客戶)、orders(訂單)、orderitems(訂單項)和goods(商品)四個表。
(1)創建一個名為“訂單管理”的數據庫,并將已有的customers表添加到該數據庫中。
?。?)利用表設計器為customers表建立一個普通索引,索引名為bd,索引表達式為“出生日期”。
?。?)在表設計器中為customers表的“性別”字段設置有效性規則,規則表達式為:性別$“男女”,出錯提示信息是:“性別必須是男或女”。
?。?)利用INDEX命令為customers表建立一個普通索引,索引名為khh,索引表達式為“客戶號”,索引存放在customers.cdx中。然后將該INDEX命令存入命令文件pone.prg中。
解題思路:
?。?)創建數據庫可以使用“文件”菜單完成,選擇文件—新建—數據庫—新建文件,在數據庫設計器中添加customers表。
?。?)在customers表設計器中的索引選項卡建立索引名為bd,索引表達式為“出生日期”的普通索引。
?。?)建立有效性規則在表設計器中的字段選項卡中設置。在“規則”欄中輸入:性別$“男女”,“提示信息”欄輸入:“性別必須是男或女”。
?。?)建立普通索引的命令為:INDEX ON客戶號TAG khh of customers.cdx,然后將此命令保存在pone.prg文件中。
3.簡單應用題
簡單應用題有兩個小題,主要考查范圍如下。
?。?)SQL查詢語句的使用,利用SQL-SELECT語句建立查詢,查詢去向、子查詢、統計、數據分組的運用,連接查詢的使用;
(2)菜單的建立與應用,在表單中調用菜單,快捷菜單的建立,在表單中調用快捷菜單;
?。?)表單文件的建立與修改,使用表單向導制作表單,表單中數據環境的添加、控件的使用、控件屬性的修改,表單的退出,新建自定義表單類;
(4)報表的使用,使用報表向導制作報表;
?。?)使用查詢設計器建立查詢,利用視圖設計器建立視圖;
(6)簡單應用程序的建立,程序的修改;
?。?)數據庫的創建,向數據庫中添加表,使用SQL語句進行記錄的更新。
例2.簡單應用(共2小題)
?。?)在考生文件夾下創建表單文件formone.scx,如下圖所示,其中包含一個標簽Label1、一個文本框Text1和一個命令按鈕Command1。然后按相關要求完成相應操作。
?、偃鐖D所示設置表單、標簽和命令按鈕的Caption屬性。
②設置文本框的Value屬性值為表達式Date()。
?、墼O置“查詢”按鈕的Click事件代碼,使得表單運行時單擊該按鈕能夠完成如下查詢功能:從customers表中查詢指定日期以后出生的客戶,查詢結果依次包含姓名、性別、出生日期三項內容,各記錄按日期降序排序,查詢去向為表tableone。
最后運行該表單,查詢1980年1月1日以后出生的客戶。
(2)向名為“訂單管理”的數據庫(在基本操作題中建立)添加orderitems表。然后在數據庫中創建視圖viewone,利用該視圖可以從orderitems表查詢統計各商品的訂購總量,查詢結果依次包含商品號和訂購總量(即所有訂單對該商品的訂購數量之和)兩項內容,各記錄按商品號升序。最后利用該視圖查詢視圖中的全部信息,并將查詢結果存放在表tabletwo中。
解題思路:
第1題:
?、僭诿畲翱谳斎朊睿篊REATE FORM formone,打開表單設計器窗口。
?、谠诒韱紊咸砑訕撕?、文本框和命令按鈕,并進行適當的布置和大小調整。
?、墼O置標簽、“查詢”命令按鈕、表單的Caption屬性值。
?、軐⑽谋究虻腣alue屬性值設置為“=date()”。
?、菰O置“查詢”按鈕的Click事件代碼:
SELECT姓名,性別,出生日期FROM customers;
where出生日期>=ctod(thisform.text1.value)order by出生日期DESC;
INTO TABLE tableone.dbf
?、薇4姹韱尾⑦\行,在文本框中輸入01/01/1980,并單擊“查詢”命令按鈕。
第2題:
打開“訂單管理”數據庫,單擊“數據庫”菜單中的“添加表”,將orderitems表添加到數據庫中,新建“本地視圖”,添加“orderitems”表到視圖中,先選擇“商品號”字段,再在“函數與表達式”中輸入“sum(orderitems.數量)as訂購總量”,單擊“添加”按鈕,在“排序依據”中選擇按“商品號”升序,“分組依據”中選擇“商品號”,以視圖名viewone保存該視圖。利用剛創建的視圖viewone查詢視圖中的全部信息,在“添加表或視圖”對話框中選擇viewone視圖,在字段中選擇所有字段,設置查詢去向為表tabletwo。
4.綜合應用題
綜合應用題通常只有一個大題,由若干小題組成,主要考查學生對Visual FoxPro的綜合應用能力,考查覆蓋范圍如下。
(1)表單的建立,表單中控件的使用(組合框、文本框、按鈕等),表單中控件屬性的修改,表單的退出;
?。?)結構化查詢語言(SQL)中的連接查詢、查詢的排序、分組查詢、臨時表的靈活使用、查詢結果的去向等;
(3)程序的建立方法、程序中選擇結構和循環結構的使用;
?。?)數據庫的建立、將自由表添加到數據庫中;
(5)查詢的建立,視圖的建立;
(6)菜單的建立、生成菜單程序。
例3.綜合應用(共1小題)。在考生文件夾下創建一個頂層表單myform.scx(表單的標題為“考試”),然后創建并在表單中添加菜單(菜單的名稱為mymenu.mnx,菜單程序的名稱為mymenu.mpr)。效果如下圖所示。
?、俨藛蚊睢坝嬎恪焙汀巴顺觥钡墓δ芏纪ㄟ^執行過程完成。
?、诓藛蚊睢坝嬎恪钡墓δ苁歉鶕rderitems表和goods表中的相關數據計算各訂單的總金額(一個訂單的總金額等于它所包含的各商品的金額之和,每種商品的金額等于數量乘以單價),并將計算的結果填入orders表的相應字段中。
?、鄄藛蚊睢巴顺觥钡墓δ苁轻尫挪㈥P閉表單。
最后,請運行表單并依次執行其中的“計算”和“退出”菜單命令。
解題思路:
?、俳⒈韱危嚎赏ㄟ^“文件”菜單下的“新建”命令或用命令CREATE FORM打開表單設計器。
?、谛薷谋韱胃鲗傩灾?,將CAPTION屬性值設為“考試”。將表單以myform.scx為文件名保存在考生文件夾下。
?、劢⒉藛危嚎赏ㄟ^“文件”菜單下的“新建”命令或命令CREATE MENU打開菜單設計器。點擊“顯示”菜單下的“常規選項”命令打開“常規選項”對話框,選中“頂層表單”復選框。在菜單設計器中建立各菜單項,菜單名稱分別為:計算和退出。在“計算”菜單的結果列中選擇“過程”,并通過單擊“創建”按鈕打開一個窗口來添加“計算”菜單項要執行的命令,命令如下:
0f1d0f111ffdb562ea87f599085b37534c6baff8ae68dd8b73833093f3ea5fcfCLOSE DATABASE
USE orders
GO TOP
DO WHILE NOT EOF()
Dingdanhao=訂單號
SELECT sum(orderitems.數量*goods.單價)FROM orderitems,goods;
WHERE orderitems.商品號=goods.商品號AND orderitems.訂單號=dingdanhao;
GROUP BY orderitems.訂單號INTO ARRAY A
REPLACE總金額WITH A(1)
SKIP
ENDDO
在“退出”菜單的結果列中選擇“過程”,并通過單擊“創建”按鈕打開一個窗口來添加菜單項要執行的命令:myform.release,用來關閉表單并返回到系統菜單。
最后點擊“菜單”下的“生成”命令,生成mymenu.mpr菜單程序。
?、軐⒈韱蝝yform.scx中的ShowWindow屬性設置為“2-作為頂層表單”,并在表單的LOAD事件中輸入:do mymenu.mpr with this,‘mymenu’,執行菜單程序。
?、荼4娌⑦\行表單,依次執行其中的“計算”和“退出”菜單命令。
5.結語
全國計算機等級考試在成為全國第一大計算機類考試后,開始進行改革和完善,每年的上機考試題均有更新和改進。在二級VFP上機考試中,考試的模式沒有變,但是題型也在變化,需要考生系統地掌握好VFP后,進行一定程度的融會貫通,將知識升華。這樣在進行上機考試時,才能夠較順利地通過。
參考文獻:
?。?]袁霞.淺談全國計算機等級考試——二級Visual FoxPro數據庫程序設計的上機考試[J].信息科學,2010.6.
[2]教育部考試中心.全國計算機等級考試二級教程——Visual FoxPro數據庫程序設計[M].高等教育出版社,2010.9.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文