點(diǎn)擊查看:2015年計(jì)算機(jī)二級(jí)VFP考試練習(xí)及答案解析匯總
第4套
一、基本操作題(共四小題,第1和2題是7分、第3和4是8分)
在考生文件夾下已有customers(客戶(hù))、orders(訂單)、orderitems(訂單項(xiàng))和goods(商品)四個(gè)表。
在考生文件夾下完成如下操作:
1.創(chuàng)建一個(gè)名為"訂單管理"的數(shù)據(jù)庫(kù),并將已有的customers表添加到該數(shù)據(jù)庫(kù)中。
2.利用表設(shè)計(jì)器為customers表建立一個(gè)普通索引,索引名為bd,索引表達(dá)式為"出生日期"。
3.在表設(shè)計(jì)器中為customers表的"性別"字段設(shè)置有效性規(guī)則,規(guī)則表達(dá)式為:性別$"男女",出錯(cuò)提示信息是:"性別必須是男或女"。
4.利用INDEX命令為customers表建立一個(gè)普通索引,索引名為khh,索引表達(dá)式為"客戶(hù)號(hào)",索引存放在customers.cdx中。然后將該INDEX命令存入命令文件pone.prg中。
本題主要考核點(diǎn):將一個(gè)自由表添加到數(shù)據(jù)庫(kù)中、設(shè)置有效性規(guī)則、用INDEX命令和表設(shè)計(jì)器建立表索引。
解題思路:
3、建立有效性規(guī)則在表設(shè)計(jì)器中的字段選項(xiàng)卡中設(shè)置。在"規(guī)則"欄中輸入:性別$"男女","提示信息"欄輸入:"性別必須是男或女"。
4、建立普通索引的命令為:INDEX ON 客戶(hù)號(hào) TAG khh of customers.cdx,然后將此命令保存在pone.prg文件中。
二、簡(jiǎn)單應(yīng)用(2小題,每題20分,計(jì)40分)
1.在考生文件夾下創(chuàng)建表單文件formone.scx,如下圖所示,其中包含一個(gè)標(biāo)簽Label1、一個(gè)文本框Text1和一個(gè)命令按鈕Command1。然后按相關(guān)要求完成相應(yīng)操作。
(1)如圖所示設(shè)置表單、標(biāo)簽和命令按鈕的Caption屬性。
(2)設(shè)置文本框的Value屬性值為表達(dá)式Date()。
(3)設(shè)置"查詢(xún)"按鈕的Click事件代碼,使得表單運(yùn)行時(shí)單擊該按鈕能夠完成如下查詢(xún)功能:從customers表中查詢(xún)指定日期以后出生的客戶(hù),查詢(xún)結(jié)果依次包含姓名、性別、出生日期三項(xiàng)內(nèi)容,各記錄按出生日期降序排序,查詢(xún)?nèi)ハ驗(yàn)楸韙ableone。
最后運(yùn)行該表單,查詢(xún)1980年1月1日以后出生的客戶(hù)。
2.向名為"訂單管理"的數(shù)據(jù)庫(kù)(在基本操作題中建立)添加orderitems表。然后在數(shù)據(jù)庫(kù)中創(chuàng)建視圖viewone:利用該視圖可以從orderitems表查詢(xún)統(tǒng)計(jì)各商品的訂購(gòu)總量,查詢(xún)結(jié)果依次包含商品號(hào)和訂購(gòu)總量(即所有訂單對(duì)該商品的訂購(gòu)數(shù)量之和)兩項(xiàng)內(nèi)容,各記錄按商品號(hào)升序排序。最后利用該視圖查詢(xún)視圖中的全部信息,并將查詢(xún)結(jié)果存放在表tabletwo中。
本題主要考核點(diǎn):表單文件的創(chuàng)建、控件的屬性的修改、SQL語(yǔ)句運(yùn)用、表單的退出。
解題思路:
第1題:
①在命令窗口輸入命令:CREATE FORM formone,打開(kāi)表單設(shè)計(jì)器窗口。
、谠诒韱紊咸砑訕(biāo)簽、文本框和命令按鈕,并進(jìn)行適當(dāng)?shù)牟贾煤痛笮≌{(diào)整。
③設(shè)置標(biāo)簽、"查詢(xún)"命令按鈕、表單的Caption屬性值。
、軐⑽谋究虻腣alue屬性值設(shè)置為"=date()"。
⑤設(shè)置"查詢(xún)"按鈕的Click事件代碼:
SELECT 姓名,性別,出生日期 FROM customers;
WHERE 出生日期>=ctod(thisform.Text1.Text);
ORDER BY 出生日期 DESC;
INTO TABLE tableone.dbf
⑥保存表單并運(yùn)行,在文本框中輸入01/01/1980,并單擊"查詢(xún)"命令按鈕。
第2題:打開(kāi)"訂單管理"數(shù)據(jù)庫(kù),單擊"數(shù)據(jù)庫(kù)"菜單中的"添加表",將orderitems表添加到數(shù)據(jù)庫(kù)中,新建"本地視圖",添加"orderitems"表到視圖中,先選擇"商品號(hào)"字段,再在"函數(shù)與表達(dá)式"中輸入"SUM(Orderitems.數(shù)量) AS 訂購(gòu)總量",單擊"添加"按鈕,在"排序依據(jù)"中選擇按"商品號(hào)"升序,"分組依據(jù)"中選擇"商品號(hào)",以文件名viewone保存該視圖。利用剛創(chuàng)建的視圖viewone查詢(xún)視圖中的全部信息,在"添加表或視圖"對(duì)話(huà)框中選擇viewone視圖,在字段中選擇所有字段,設(shè)置查詢(xún)?nèi)ハ驗(yàn)楸韙abletwo。
三、綜合應(yīng)用(1小題,計(jì)30分)
在考生文件夾下創(chuàng)建一個(gè)頂層表單myform.scx(表單的標(biāo)題為"考試"),然后創(chuàng)建并在表單中添加菜單(菜單的名稱(chēng)為mymenu.mnx,菜單程序的名稱(chēng)為mymenu.mpr)。效果如下圖所示。
1)菜單命令"計(jì)算"和"退出"的功能都通過(guò)執(zhí)行過(guò)程完成。
2)菜單命令"計(jì)算"的功能是根據(jù)orderitems表和goods表中的相關(guān)數(shù)據(jù)計(jì)算各訂單的總金額(一個(gè)訂單的總金額等于它所包含的各商品的金額之和,每種商品的金額等于數(shù)量乘以單價(jià)),并將計(jì)算的結(jié)果填入orders表的相應(yīng)字段中。
3)菜單命令"退出"的功能是釋放并關(guān)閉表單。
最后,請(qǐng)運(yùn)行表單并依次執(zhí)行其中的"計(jì)算"和"退出"菜單命令。
解題思路:
1、建立表單:可通過(guò)"文件"菜單下的"新建"命令或用命令CREATE FORM打開(kāi)表單設(shè)計(jì)器。
2、修改表單各屬性值,CAPTION="考試"。將表單以myform.scx為文件名保存在考生文件夾下。
3、建立菜單:可通過(guò)"文件"菜單下的"新建"命令或用命令CREATE MEMU打開(kāi)菜單設(shè)計(jì)器。點(diǎn)擊"顯示"菜單下的"常規(guī)選項(xiàng)"命令打開(kāi)"常規(guī)選項(xiàng)"對(duì)話(huà)框,選中"頂層表單"復(fù)選框。在菜單設(shè)計(jì)器中建立各菜單項(xiàng),菜單名稱(chēng)分別為:計(jì)算和退出。在"計(jì)算"菜單的結(jié)果列中選擇"過(guò)程",并通過(guò)單擊"創(chuàng)建"按鈕打開(kāi)一個(gè)窗口來(lái)添加"計(jì)算"菜單項(xiàng)要執(zhí)行的命令:
CLOSE DATA
USE Orders
GO TOP
DO WHILE NOT EOF()
dingdanhao=訂單號(hào)
SELECT sum(Orderitems.數(shù)量* Goods.單價(jià)) FROM orderitems,goods;
WHERE Orderitems.商品號(hào)=Goods.商品號(hào) AND orderitems.訂單號(hào)=dingdanhao;
GROUP BY Orderitems.訂單號(hào) INTO ARRAY A
REPLACE 總金額 WITH A[1]
SKIP
ENDDO
在"退出"菜單的結(jié)果列中選擇"過(guò)程",并通過(guò)單擊"創(chuàng)建"按鈕打開(kāi)一個(gè)窗口來(lái)添加菜單項(xiàng)要執(zhí)行的命令:myform.release,用來(lái)關(guān)閉表單并返回到系統(tǒng)菜單。
最后點(diǎn)擊"菜單"下的"生成"命令,生成mymenu.mpr程序。
4、將表單myform.scx中的ShowWindow屬性設(shè)置為"2-作為頂層表單",并在表單的LOAD事件中輸入:do mymenu.mpr with this,'mymenu',執(zhí)行菜單程序。
5、保存并運(yùn)行表單,依次執(zhí)行其中的"計(jì)算"和"退出"菜單命令。
相關(guān)推薦:
各地2015年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |