- 相關(guān)推薦
計算機二級VF上機題庫及答案
第1題:
1. 建立菜單QUERY_MENU。該菜單只有"查詢(xún)"和"退出"兩個(gè)主菜單項(條形菜單), 其中單擊菜單項"退出"時(shí),返回到VFP系統菜單(相應命令寫(xiě)在命令框中,不要 寫(xiě)在過(guò)程中)。
2. 將COURSE表的"開(kāi)課系部"字段名改為"開(kāi)課單位",其余不變。
3. 從數據庫SCORE_MANAGER中移去表TEMP2.DBF(不是刪除)。
4. 將SCORE1表中記錄按學(xué)號從低到高排序,在學(xué)號相同的情況下再按成績(jì)從高
到低排序,排序結果存入表NEW_ORDER。
本題主要考核點(diǎn):
菜單的建立、字段改名、數據庫表的邏輯刪除、表的排序及查詢(xún)去向等知識點(diǎn)
本題解題思路:
第1題:本題的主要考核點(diǎn)是菜單的建立。新建菜單可按下列步驟:選擇"文件"菜單中的"新建"命令,在"新建"對話(huà)框中選擇"菜單",單擊"新建文件"按鈕。在"新建菜單"對話(huà)框中選擇"菜單"按鈕,調出"菜單設計器"。也可用CREATE MENU命令直接調出菜單設計器。在菜單名稱(chēng)中填入"查詢(xún)"、"退出","退出"結果為命令"SET SYSMENU TO DEFAULT"。
第2題:本題的主要考核點(diǎn)是字段的改名。
打開(kāi)COURSE表表設計器,將光標移動(dòng)到"開(kāi)課系部"字段格中,將其改為"開(kāi)課單位"。
第3題:本題的主要考核點(diǎn)是數據庫表的邏輯刪除。
打開(kāi)考生文件夾下的" SCORE_MANAGER "數據庫,在" SCORE_MANAGER "數據庫設計器中,選中"TEMP2"表,點(diǎn)擊主菜單"數據庫"下的"移去",在彈出的對話(huà)框中點(diǎn)擊"移去"按鈕,在隨后彈出的對話(huà)框中點(diǎn)擊"是"按鈕,至此便完成了"從數據庫"SCORE_MANAGER"中移去表TEMP2(不是刪除)"的操作。
第4題:本題的主要考核點(diǎn)是表的排序知識,查詢(xún)去向。
select * from score1 order by 學(xué)號,成績(jì) desc into table new_order
第2題:
1. 在SCORE_MANAGER數據庫中統計選修了課程的學(xué)生人數(選修多門(mén)時(shí),只計算1次),統計結果保存在一個(gè)新表NEW_TABLE中, 表中只有一個(gè)字段,字段名為學(xué)生人數。
2. 在SCORE_MANAGER數據庫中查詢(xún)沒(méi)有學(xué)生選修的課程,查詢(xún)結果含"課程名"和"開(kāi)課單位"字段,結果按課程名升序保存在一個(gè)新表NEW_TABLE2中(注意:字段名"開(kāi)課單位"是在基本操作中根據"開(kāi)課系部"修改后的字段名)。
本題主要考核點(diǎn):本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用,查詢(xún)去向等知識點(diǎn)。
本題解題思路:第1題: 本題可以通過(guò)新建一個(gè)程序來(lái)實(shí)現統計,相關(guān)代碼如下所示:
SELECT Student.姓名;
FROM course INNER JOIN score1;
INNER JOIN student ;
ON Student.學(xué)號 = Score1.學(xué)號 ;
ON Course.課程號 = Score1.課程號;
WHERE Course.課程號 = score1.課程號;
GROUP BY Student.姓名;
into cursor temp
select count(姓名) AS 學(xué)生人數 from temp;
into table NEW_TABLE
第2題:本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用。
SELECT Course.課程名, Course.開(kāi)課單位;
FROM course LEFT OUTER JOIN score1;
LEFT OUTER JOIN student ;
ON Student.學(xué)號 = Score1.學(xué)號 ;
ON Course.課程號 = Score1.課程號;
WHERE Course.課程號 !=Score1.課程號;
ORDER BY Course.課程名;
INTO TABLE new_table2.dbf
第3題:
SCORE_MANAGER數據庫中含有三個(gè)數據庫表STUDENT、SCORE1和COURSE。 為了對SCORE_MANAGER數據庫數據進(jìn)行查詢(xún),設計一個(gè)表單Myform3(控件名為form1,表單文件名為Myform3)。表單標題為"成績(jì)查詢(xún)";表單有"查詢(xún)"(名稱(chēng)為Command1)和"退出"(名稱(chēng)為Command2)兩個(gè)命令按鈕。表單運行時(shí),單擊"查詢(xún)"按鈕,查詢(xún)每門(mén)課程的最高分,查詢(xún)結果中含"課程名"和"最高分"字段,結果按課程名升序保存在表NEW_TABLE3。 單擊"退出"按鈕,關(guān)閉表單。
本題主要考核點(diǎn): 表單文件的創(chuàng )建、控件的屬性的修改、SQL語(yǔ)句運用、表單的退出等知識點(diǎn)
本題解題思路:
第一步:在Visual FoxPro主窗口中按下組合鍵Ctrl+N,系統彈出"新建"對話(huà)框,在文件類(lèi)型中選擇"表單",點(diǎn)擊"新建文件"按鈕,系統將打開(kāi)表單設計器;或直接在命令窗口中輸入 crea form Myform3。
第二步:點(diǎn)擊工具欄按鈕"表單控件工具欄",在彈出的"表單控件"工具欄中,選中"命令按鈕"控件,在表單設計器中拖動(dòng)鼠標,這樣在表單上得到一個(gè)"命令按鈕"控件command1,用同樣的方法為表單再加入一個(gè)"命令按鈕"控件command2;
相關(guān)控件的屬性值如下:
對象 屬性 屬性值
Form1 Caption 成績(jì)查詢(xún)
Command1 Caption 查詢(xún)
Command2 Caption 退出
****命令按鈕command1(查詢(xún))的Click事件代碼如下****
SELECT Course.課程名, MAX(score1.成績(jì)) AS 最高分;
FROM course INNER JOIN score1;
INNER JOIN student ;
ON Student.學(xué)號 = Score1.學(xué)號 ;
ON Course.課程號 = Score1.課程號;
GROUP BY Course.課程名;
INTO TABLE NEW_TABLE3
****命令按鈕command2(退出)的Click事件代碼如下****
thisform.release
第4題:
1. 打開(kāi)數據庫SCORE_MANAGER, 該數據庫中含三個(gè)有聯(lián)系的表STUDENT、SCORE1 和COURSE, 根據已經(jīng)建立好的索引, 建立表之間聯(lián)系。
2. 為COURSE表增加字段:開(kāi)課學(xué)期(N,2,0)。
3. 為SCORE1表"成績(jì)"字段設置字段有效性規則: 成績(jì)>=0,出錯提示信息是: "成績(jì)必須大于或等于零"。
4. 將SCORE1表"成績(jì)"字段的默認值設置為空值(NULL)。
本題主要考核點(diǎn):為已建立索引的表建立聯(lián)系、設置字段的默認值、字段的添加、字段有效性的設置等知識點(diǎn)
本題解題思路:
第1題:本題的主要考核點(diǎn)是建立兩個(gè)表之間永久聯(lián)系。
在父表中選中主索引,按住鼠標拖動(dòng)至子表相應的普通索引上,釋放鼠標,聯(lián)系即已建立。
第2題:本題的主要考核點(diǎn)是字段的添加的方法。
打開(kāi)COURSE表表設計器,將光標移動(dòng)到最后的空字段格中,輸入新的字段名、字段類(lèi)型及長(cháng)度。
第3題:本題的主要考核點(diǎn)是字段有效性的設置。
在表設計器中,選中"成績(jì)"字段,在"字段有效性"中的"規則"文本框中填入: 成績(jì)>=0,在"信息"文本框中中填入"成績(jì)必須大于或等于零",單擊確定。
第4題:本題的主要考核點(diǎn)是字段默認值的設置。
在表設計器對話(huà)框中,選擇"成績(jì)"字段,點(diǎn)擊NULL列下的按鈕(表示此列允許空值),然后再在"字段有效性"中的默認值中填入.NULL.,單擊確定。
第5題:
1. 在SCORE_MANAGER數據庫中查詢(xún)學(xué)生的姓名和年齡(計算年齡的公式是:2003-Year(出生日期),年齡作為字段名),結果保存在一個(gè)新表NEW_TABLE1中。使用報表向導建立報表NEW_REPORT1,用報表顯示NEW_TABLE1的內容。報表
中數據按年齡升序排列,報表標題是"姓名-年齡",其余參數使用缺省參數。
2. 在SCORE_MANAGER數據庫中查詢(xún)沒(méi)有選修任何課程的學(xué)生信息,查詢(xún)結果包括"學(xué)號"、"姓名"和"系部"字段,查詢(xún)結果按學(xué)號升序保存在一個(gè)新表NEW_TABLE2中。
本題主要考核點(diǎn):
本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用,查詢(xún)去向、報表向導的使用等知識點(diǎn)
本題解題思路:
第1題:本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用,查詢(xún)去向、報表向導的使用。
SELECT 姓名, 2003-Year(出生日期) as 年齡;
FROM student;
INTO TABLE new_table1.dbf
啟動(dòng)報表向導可在"文件"菜單中選擇"新建"或者單擊工具欄上的"新建"按鈕,打開(kāi)"新建"對話(huà)框,文件類(lèi)型選擇報表,單擊向導按鈕;蛘咴"工具"菜單中選擇"向導"子菜單,選擇"報表",或直接單擊工具欄上的"報表向導"圖標按鈕。然后按照向導提示操作即可。
第2題:本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用。
SELECT Student.學(xué)號, Student.姓名, Student.系部;
FROM course right OUTER JOIN score1;
right OUTER JOIN student ;
ON Student.學(xué)號 = Score1.學(xué)號 ;
ON Course.課程號 = Score1.課程號;
WHERE Student.學(xué)號 != Score1.學(xué)號 ;
ORDER BY Student.學(xué)號;
INTO TABLE new_table2.dbf
第6題:
1. 用SQL語(yǔ)句完成下列操作: 將選課在5門(mén)課程以上(包括5門(mén))的學(xué)生的學(xué)號、姓名、平均分和選課門(mén)數按平均分降序排序,并將結果存放于數據庫表stu_temp(字段名為學(xué)號、姓名、平均分和選課門(mén)數)。
2. 建立一個(gè)名為menu_lin的下拉式菜單,菜單中有兩個(gè)菜單項"查詢(xún)"和"退出"。"查詢(xún)"項下還有一個(gè)子菜單,子菜單有"按姓名"和"按學(xué)號"兩個(gè)選項。在"退出"菜單項下創(chuàng )建過(guò)程,該過(guò)程負責使程序返回到系統菜單。
本題主要考核點(diǎn):SQL查詢(xún)語(yǔ)句的使用,查詢(xún)去向、下拉式菜單的建立等知識點(diǎn)
本題解題思路:
第1題:本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用,查詢(xún)去向。
SELECT 學(xué)生.學(xué)號, 學(xué)生.姓名, AVG(選課.成績(jì)) as 平均分,;
COUNT(選課.課程號) AS 選課門(mén)數;
FROM 學(xué)生!學(xué)生 INNER JOIN 學(xué)生!選課;
INNER JOIN 學(xué)生!課程;
ON 課程.課程號 = 選課.課程號;
ON 學(xué)生.學(xué)號 = 選課.學(xué)號;
GROUP BY 學(xué)生.姓名;
HAVING COUNT(選課.課程號)>=5;
ORDER BY 3 DESC;
INTO TABLE stu_temp.dbf
第2題:本題的主要考核點(diǎn)是菜單的建立。
新建菜單可按下列步驟:選擇"文件"菜單中的"新建"命令,在"新建"對話(huà)框中選擇"菜單",單擊"新建文件"按鈕。在"新建菜單"對話(huà)框中選擇"菜單"按鈕,調出"菜單設計器"。也可用CREATE MENU命令直接調出菜單設計器。在菜單名稱(chēng)中填入"查詢(xún)"、"退出","查詢(xún)"結果為子菜單,單擊編輯;在子菜單的菜單名稱(chēng)中輸入"按姓名"、"按學(xué)號","退出"結果為過(guò)程,單擊編輯,填入"SET SYSMENU TO DEFAULT"(不要引號)。
第7題:
設計名為mystock的表單(控件名,文件名均為mystock)。表單的標題為:"股票持有情況"。表單中有兩個(gè)文本框(text1和text2)和兩個(gè)命令按鈕"查詢(xún)" (名稱(chēng)為Command1)和"退出"(名稱(chēng)為Command2)。 運行表單時(shí),在文本框text1中輸入某一股票的漢語(yǔ)拼音,然后單擊"查詢(xún)",則text2中會(huì )顯示出相應股票的持有數量。 單擊"退出"按鈕關(guān)閉表單。
本題主要考核點(diǎn):
表單的創(chuàng )建、控件的屬性的修改、表單的退出、SQL查詢(xún)等知識點(diǎn)
本題解題思路:
第一步:在Visual FoxPro主窗口中按下組合鍵Ctrl+N,系統彈出"新建"對話(huà)框,在文件類(lèi)型中選擇"表單",點(diǎn)擊"新建文件"按鈕,系統將打開(kāi)表單設計器;或直接在命令窗口中輸入crea form mystock。
第二步:點(diǎn)擊工具欄按鈕"表單控件工具欄",在彈出的"表單控件"對話(huà)框中,選中"命令按鈕"控件,在表單設計器中拖動(dòng)鼠標,這樣在表單上得到一個(gè)"命令按鈕"控件command1,用類(lèi)似的方法為表單加入一個(gè)"命令按鈕"控件command2,二個(gè)"文本框"控件text1和text2。
相關(guān)控件的屬性值如下表所示:
對象 屬性 屬性值
Form1 Name mystock
Caption 股票持有情況
Command1 Caption 查詢(xún)
Command2 Caption 退出
***命令按鈕command1(查詢(xún))的Click事件代碼如下****
SELECT Stock_sl.持有數量;
FROM stock!stock_name INNER JOIN stock!stock_sl ;
ON Stock_name.股票代碼 = Stock_sl.股票代碼;
WHERE Stock_name.漢語(yǔ)拼音 = alltrim(thisform.text1.value);
INTO ARRAY TEMP
THISFORM.TEXT2.VALUE=TEMP
***命令按鈕command2(退出)的Click事件代碼如下***
thisform.release
第8題:
1. 使用報表向導建立一個(gè)簡(jiǎn)單報表。要求選擇客戶(hù)表Customer中所有字段;記錄不分組;報表樣式為隨意式;列數為"1",字段布局為"列",方向為"縱向";排序字段為"會(huì )員號",升序;報表標題為"客戶(hù)信息一覽表";報表文件名為
myreport。
2.使用命令建立一個(gè)名稱(chēng)為sb_view的視圖,并將定義視圖的命令代碼存放到命令文件pview.prg。視圖中包括客戶(hù)的會(huì )員號(來(lái)自Customer表)、姓名(來(lái)自Customer表)、客戶(hù)所購買(mǎi)的商品名(來(lái)自article表)、單價(jià)(來(lái)自OrderItem
表)、數量(來(lái)自OrderItem表)和金額(OrderItem.單價(jià) * OrderItem.數量),結果按會(huì )員號升序排序。
本題主要考核點(diǎn): 報表向導的使用,用命令建立視圖等知識點(diǎn)
本題解題思路:
第1題:本題的主要考核點(diǎn)是使用報表向導制作報表。
啟動(dòng)報表向導可在"文件"菜單中選擇"新建"或者單擊工具欄上的"新建"按鈕,打開(kāi)"新建"對話(huà)框,文件類(lèi)型選擇報表,單擊向導按鈕;蛘咴"工具"菜單中選擇"向導"子菜單,選擇"報表",或直接單擊工具欄上的"報表向導"圖標按鈕。然后按照向導提示操作即可。
第2題:本題的主要考核點(diǎn)是用命令建立視圖。
CREA VIEW sb_view
SELECT Customer.會(huì )員號, Customer.姓名, Article.商品名, Orderitem.單價(jià),;
Orderitem.數量, OrderItem.單價(jià) * OrderItem.數量 as 金額;
FROM ecommerce!customer INNER JOIN ecommerce!orderitem;
INNER JOIN ecommerce!article ON Article.商品號 = Orderitem.商品號 ;
ON Customer.會(huì )員號 = Orderitem.會(huì )員號 ORDER BY Customer.會(huì )員號
第9題:
1. 打開(kāi)Ecommerce數據庫,并將考生文件夾下的自由表OrderItem添加到該數據 庫。
2. 為OrderItem表創(chuàng )建一個(gè)主索引,索引名為PK,索引表達式為"會(huì )員號+商品號"; 再為OrderItem創(chuàng )建兩個(gè)普通索引(升序),一個(gè)的索引名和索引表達式均是 "會(huì )員號";另一個(gè)的索引名和索引表達式均是"商品號"。
3.通過(guò)"會(huì )員號"字段建立客戶(hù)表Customer和訂單表OrderItem之間的永久聯(lián)系( 注意不要建立多余的聯(lián)系)。
4.為以上建立的聯(lián)系設置參照完整性約束:更新規則為"級聯(lián)";刪除規則為 "限制";插入規則為"限制"。
本題主要考核點(diǎn):
將一個(gè)自由表添加到數據庫中、表索引的建立、表之間的永久聯(lián)系的建立、參照完整性約束的編輯等知識點(diǎn)
本題解題思路:
第1題:打開(kāi)考生文件夾下的"Ecommerce"數據庫,打開(kāi)數據庫菜單選擇"添加表(A)",在彈出的"打開(kāi)"對話(huà)框中,選定考生文件夾下的orderitem表,再點(diǎn)擊"確定"即可,這樣表order_detail就添加到了"Ecommerce"數據庫中。
第2題:在數據庫設計器中選中表orderitem,在主菜單中選擇"修改(Y)",彈出表設計器,選擇表設計器"索引"標簽,在索引名列中填入"PK",在索引類(lèi)型列中選擇"主索引",在索引表達式列中填入"會(huì )員號+商品號",用同樣的方法再為OrderItem創(chuàng )建兩個(gè)普通索引(升序),一個(gè)的索引名和索引表達式均是"會(huì )員號";另一個(gè)的索引名和索引表達式均是"商品號"點(diǎn)擊"確定"按鈕,保存表結構。
第3題:在數據庫設計器中,選中customer表中的索引"會(huì )員號"并拖動(dòng)到表OrderItem的"會(huì )員號"的索引上并松開(kāi),這樣兩個(gè)表之間就建立起了永久聯(lián)系。
第4題:在第3題建立好永久聯(lián)系之后,在兩處表的"會(huì )員號"索引之間有一條線(xiàn),單擊這條表示兩個(gè)表之間聯(lián)系的線(xiàn),線(xiàn)會(huì )加粗,此時(shí)在主菜單中選擇"數據庫"中的"編輯參照完整性(I)",系統彈出"參照完整性生成器"對話(huà)框,在"更新規則"標簽中,選擇"級聯(lián)"規則,在"刪除"規則中選擇"限制",在"插入規則"中選擇"限制",單擊"確定"保存所編輯的參照完整性。
第10題:
1. modi1.prg 程序文件中 SQL SELECT語(yǔ)句的功能是查詢(xún)哪些零件(零件名稱(chēng))目前用于三個(gè)項目, 并將結果按升序存入文本文件 results.txt。 給出的SQL SELECT 語(yǔ)句中在第 1、3、5 行各有一處錯誤,請改正并運行程序(不可以增、刪語(yǔ)句或短語(yǔ),也不可以改變語(yǔ)句行)。
2.根據項目信息(一方)和使用零件(多方)兩個(gè)表、利用一對多報表向導建立一個(gè)報表,報表中包含項目號、項目名、項目負責人、(聯(lián)系)電話(huà)、(使用的)零件號和數量等6個(gè)字段,報表按項目號升序排序,報表樣式為經(jīng)營(yíng)式,在
總結區域(細節及總結)包含零件使用數量的合計,報表標題為"項目使用零件信息",報表文件名為report。
本題主要考核點(diǎn):VFP命令,報表向導的使用等知識點(diǎn)
本題解題思路:
第1題:本題是一個(gè)程序修改題。第一處錯誤SELECT 零件名稱(chēng) FROM 零件信息 WHERE 零件號 =,應改為SELECT 零件名稱(chēng) FROM 零件信息 WHERE 零件號 IN;第二處錯誤為GROUP BY 項目號 HAVING COUNT(項目號) = 3),應改為GROUP BY 零件號 HAVING COUNT(項目號) = 3);第三處錯誤為IN FILE results,應改為T(mén)O FILE results
第2題:本題的主要考核點(diǎn)是使用報表向導制作報表。
啟動(dòng)報表向導可在"文件"菜單中選擇"新建"或者單擊工具欄上的"新建"按鈕,打開(kāi)"新建"對話(huà)框,文件類(lèi)型選擇報表,單擊向導按鈕;蛘咴"工具"菜單中選擇"向導"子菜單,選擇"報表",或直接單擊工具欄上的"報表向導"圖標按鈕。然后按照向導提示操作即可。
【計算機二級VF上機題庫及答案】相關(guān)文章:
計算機二級考試VF上機試題及答案03-21
2016計算機二級《VF》上機試題及答案01-27
2016計算機二級《VF》上機考試及答案05-13
2016年計算機二級《VF》上機題及答案06-18
計算機二級《VB》上機題題庫(含答案)05-22
計算機二級VF上機模擬題05-23