第四十四套
一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分)
在考生目錄下完成如下操作:
1. 建立菜單QUERY_MENU。該菜單只有"查詢(xún)"和"退出"兩個(gè)主菜單項(xiàng)(條形菜單),
其中單擊菜單項(xiàng)"退出"時(shí),返回到VFP系統(tǒng)菜單(相應(yīng)命令寫(xiě)在命令框中,不要
寫(xiě)在過(guò)程中)。
2. 將COURSE表的"開(kāi)課系部"字段名改為"開(kāi)課單位",其余不變。
3. 從數(shù)據(jù)庫(kù)SCORE_MANAGER中移去表TEMP2.DBF(不是刪除)。
4. 將SCORE1表中記錄按學(xué)號(hào)從低到高排序,在學(xué)號(hào)相同的情況下再按成績(jī)從高
到低排序,排序結(jié)果存入表NEW_ORDER。
本題主要考核點(diǎn):
菜單的建立、字段改名、數(shù)據(jù)庫(kù)表的邏輯刪除、表的排序及查詢(xún)?nèi)ハ虻戎R(shí)點(diǎn)
本題解題思路:
第1題:本題的主要考核點(diǎn)是菜單的建立。新建菜單可按下列步驟:選擇"文件"菜單中的"新建"命令,在"新建"對(duì)話框中選擇"菜單",單擊"新建文件"按鈕。在"新建菜單"對(duì)話框中選擇"菜單"按鈕,調(diào)出"菜單設(shè)計(jì)器"。也可用CREATE MENU命令直接調(diào)出菜單設(shè)計(jì)器。在菜單名稱(chēng)中填入"查詢(xún)"、"退出","退出"結(jié)果為命令"SET SYSMENU TO DEFAULT"。
第2題:本題的主要考核點(diǎn)是字段的改名。
打開(kāi)COURSE表表設(shè)計(jì)器,將光標(biāo)移動(dòng)到"開(kāi)課系部"字段格中,將其改為"開(kāi)課單位"。
第3題:本題的主要考核點(diǎn)是數(shù)據(jù)庫(kù)表的邏輯刪除。
打開(kāi)考生文件夾下的" SCORE_MANAGER "數(shù)據(jù)庫(kù),在" SCORE_MANAGER "數(shù)據(jù)庫(kù)設(shè)計(jì)器中,選中"TEMP2"表,點(diǎn)擊主菜單"數(shù)據(jù)庫(kù)"下的"移去",在彈出的對(duì)話框中點(diǎn)擊"移去"按鈕,在隨后彈出的對(duì)話框中點(diǎn)擊"是"按鈕,至此便完成了"從數(shù)據(jù)庫(kù)"SCORE_MANAGER"中移去表TEMP2(不是刪除)"的操作。
第4題:本題的主要考核點(diǎn)是表的排序知識(shí),查詢(xún)?nèi)ハ颉?BR> select * from score1 order by 學(xué)號(hào),成績(jī) desc;
into table new_order
二、簡(jiǎn)單應(yīng)用(2小題,每題20分,計(jì)40分)
在考生文件夾下完成如下簡(jiǎn)單應(yīng)用:
1. 在SCORE_MANAGER數(shù)據(jù)庫(kù)中統(tǒng)計(jì)選修了課程的學(xué)生人數(shù)(選修多門(mén)時(shí),只
計(jì)算1次),統(tǒng)計(jì)結(jié)果保存在一個(gè)新表NEW_TABLE中,表中只有一個(gè)字段,字段名
為學(xué)生人數(shù)。
2. 在SCORE_MANAGER數(shù)據(jù)庫(kù)中查詢(xún)沒(méi)有學(xué)生選修的課程,查詢(xún)結(jié)果含"課程
名"和"開(kāi)課單位"字段,結(jié)果按課程名升序保存在一個(gè)新表NEW_TABLE2中(注意:
字段名"開(kāi)課單位"是在基本操作中根據(jù)"開(kāi)課系部"修改后的字段名)。
本題主要考核點(diǎn):
本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用,查詢(xún)?nèi)ハ虻戎R(shí)點(diǎn)。
本題解題思路:
第1題: 本題可以通過(guò)新建一個(gè)程序來(lái)實(shí)現(xiàn)統(tǒng)計(jì),相關(guān)代碼如下所示:
SELECT Student.姓名;
FROM course INNER JOIN score1;
INNER JOIN student ;
ON Student.學(xué)號(hào) = Score1.學(xué)號(hào) ;
ON Course.課程號(hào) = Score1.課程號(hào);
WHERE Course.課程號(hào) = score1.課程號(hào);
GROUP BY Student.姓名;
into cursor temp
select count(姓名) AS 學(xué)生人數(shù) 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é)號(hào) = Score1.學(xué)號(hào) ;
ON Course.課程號(hào) = Score1.課程號(hào);
WHERE Course.課程號(hào) !=Score1.課程號(hào);
ORDER BY Course.課程名;
INTO TABLE new_table2.dbf
三、綜合應(yīng)用(1小題,計(jì)30分)
SCORE_MANAGER數(shù)據(jù)庫(kù)中含有三個(gè)數(shù)據(jù)庫(kù)表STUDENT、SCORE1和COURSE。
為了對(duì)SCORE_MANAGER數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行查詢(xún),設(shè)計(jì)一個(gè)表單Myform3(控件名為
form1,表單文件名為Myform3)。表單標(biāo)題為"成績(jī)查詢(xún)";表單有"查詢(xún)"(名稱(chēng)為
Command1)和"退出"(名稱(chēng)為Command2)兩個(gè)命令按鈕。表單運(yùn)行時(shí),單擊"查詢(xún)"
按鈕,查詢(xún)每門(mén)課程的高分,查詢(xún)結(jié)果中含"課程名"和"高分"字段,結(jié)果按
課程名升序保存在表NEW_TABLE3。
單擊"退出"按鈕,關(guān)閉表單。
本題主要考核點(diǎn):
表單文件的創(chuàng)建、控件的屬性的修改、SQL語(yǔ)句運(yùn)用、表單的退出等知識(shí)點(diǎn)
本題解題思路:
第一步:在Visual FoxPro主窗口中按下組合鍵Ctrl+N,系統(tǒng)彈出"新建"對(duì)話框,在文件類(lèi)型中選擇"表單",點(diǎn)擊"新建文件"按鈕,系統(tǒng)將打開(kāi)表單設(shè)計(jì)器;或直接在命令窗口中輸入 crea form Myform3
第二步:點(diǎn)擊工具欄按鈕"表單控件工具欄",在彈出的"表單控件"工具欄中,選中"命令按鈕"控件,在表單設(shè)計(jì)器中拖動(dòng)鼠標(biāo),這樣在表單上得到一個(gè)"命令按鈕"控件command1,用同樣的方法為表單再加入一個(gè)"命令按鈕"控件command2;
相關(guān)控件的屬性值如下:
對(duì)象 屬性 屬性值
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é)號(hào) = Score1.學(xué)號(hào) ;
ON Course.課程號(hào) = Score1.課程號(hào);
GROUP BY Course.課程名;
INTO TABLE NEW_TABLE3
****命令按鈕command2(退出)的Click事件代碼如下****
thisform.release
一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分)
在考生目錄下完成如下操作:
1. 建立菜單QUERY_MENU。該菜單只有"查詢(xún)"和"退出"兩個(gè)主菜單項(xiàng)(條形菜單),
其中單擊菜單項(xiàng)"退出"時(shí),返回到VFP系統(tǒng)菜單(相應(yīng)命令寫(xiě)在命令框中,不要
寫(xiě)在過(guò)程中)。
2. 將COURSE表的"開(kāi)課系部"字段名改為"開(kāi)課單位",其余不變。
3. 從數(shù)據(jù)庫(kù)SCORE_MANAGER中移去表TEMP2.DBF(不是刪除)。
4. 將SCORE1表中記錄按學(xué)號(hào)從低到高排序,在學(xué)號(hào)相同的情況下再按成績(jī)從高
到低排序,排序結(jié)果存入表NEW_ORDER。
本題主要考核點(diǎn):
菜單的建立、字段改名、數(shù)據(jù)庫(kù)表的邏輯刪除、表的排序及查詢(xún)?nèi)ハ虻戎R(shí)點(diǎn)
本題解題思路:
第1題:本題的主要考核點(diǎn)是菜單的建立。新建菜單可按下列步驟:選擇"文件"菜單中的"新建"命令,在"新建"對(duì)話框中選擇"菜單",單擊"新建文件"按鈕。在"新建菜單"對(duì)話框中選擇"菜單"按鈕,調(diào)出"菜單設(shè)計(jì)器"。也可用CREATE MENU命令直接調(diào)出菜單設(shè)計(jì)器。在菜單名稱(chēng)中填入"查詢(xún)"、"退出","退出"結(jié)果為命令"SET SYSMENU TO DEFAULT"。
第2題:本題的主要考核點(diǎn)是字段的改名。
打開(kāi)COURSE表表設(shè)計(jì)器,將光標(biāo)移動(dòng)到"開(kāi)課系部"字段格中,將其改為"開(kāi)課單位"。
第3題:本題的主要考核點(diǎn)是數(shù)據(jù)庫(kù)表的邏輯刪除。
打開(kāi)考生文件夾下的" SCORE_MANAGER "數(shù)據(jù)庫(kù),在" SCORE_MANAGER "數(shù)據(jù)庫(kù)設(shè)計(jì)器中,選中"TEMP2"表,點(diǎn)擊主菜單"數(shù)據(jù)庫(kù)"下的"移去",在彈出的對(duì)話框中點(diǎn)擊"移去"按鈕,在隨后彈出的對(duì)話框中點(diǎn)擊"是"按鈕,至此便完成了"從數(shù)據(jù)庫(kù)"SCORE_MANAGER"中移去表TEMP2(不是刪除)"的操作。
第4題:本題的主要考核點(diǎn)是表的排序知識(shí),查詢(xún)?nèi)ハ颉?BR> select * from score1 order by 學(xué)號(hào),成績(jī) desc;
into table new_order
二、簡(jiǎn)單應(yīng)用(2小題,每題20分,計(jì)40分)
在考生文件夾下完成如下簡(jiǎn)單應(yīng)用:
1. 在SCORE_MANAGER數(shù)據(jù)庫(kù)中統(tǒng)計(jì)選修了課程的學(xué)生人數(shù)(選修多門(mén)時(shí),只
計(jì)算1次),統(tǒng)計(jì)結(jié)果保存在一個(gè)新表NEW_TABLE中,表中只有一個(gè)字段,字段名
為學(xué)生人數(shù)。
2. 在SCORE_MANAGER數(shù)據(jù)庫(kù)中查詢(xún)沒(méi)有學(xué)生選修的課程,查詢(xún)結(jié)果含"課程
名"和"開(kāi)課單位"字段,結(jié)果按課程名升序保存在一個(gè)新表NEW_TABLE2中(注意:
字段名"開(kāi)課單位"是在基本操作中根據(jù)"開(kāi)課系部"修改后的字段名)。
本題主要考核點(diǎn):
本題的主要考核點(diǎn)是SQL查詢(xún)語(yǔ)句的使用,查詢(xún)?nèi)ハ虻戎R(shí)點(diǎn)。
本題解題思路:
第1題: 本題可以通過(guò)新建一個(gè)程序來(lái)實(shí)現(xiàn)統(tǒng)計(jì),相關(guān)代碼如下所示:
SELECT Student.姓名;
FROM course INNER JOIN score1;
INNER JOIN student ;
ON Student.學(xué)號(hào) = Score1.學(xué)號(hào) ;
ON Course.課程號(hào) = Score1.課程號(hào);
WHERE Course.課程號(hào) = score1.課程號(hào);
GROUP BY Student.姓名;
into cursor temp
select count(姓名) AS 學(xué)生人數(shù) 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é)號(hào) = Score1.學(xué)號(hào) ;
ON Course.課程號(hào) = Score1.課程號(hào);
WHERE Course.課程號(hào) !=Score1.課程號(hào);
ORDER BY Course.課程名;
INTO TABLE new_table2.dbf
三、綜合應(yīng)用(1小題,計(jì)30分)
SCORE_MANAGER數(shù)據(jù)庫(kù)中含有三個(gè)數(shù)據(jù)庫(kù)表STUDENT、SCORE1和COURSE。
為了對(duì)SCORE_MANAGER數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行查詢(xún),設(shè)計(jì)一個(gè)表單Myform3(控件名為
form1,表單文件名為Myform3)。表單標(biāo)題為"成績(jī)查詢(xún)";表單有"查詢(xún)"(名稱(chēng)為
Command1)和"退出"(名稱(chēng)為Command2)兩個(gè)命令按鈕。表單運(yùn)行時(shí),單擊"查詢(xún)"
按鈕,查詢(xún)每門(mén)課程的高分,查詢(xún)結(jié)果中含"課程名"和"高分"字段,結(jié)果按
課程名升序保存在表NEW_TABLE3。
單擊"退出"按鈕,關(guān)閉表單。
本題主要考核點(diǎn):
表單文件的創(chuàng)建、控件的屬性的修改、SQL語(yǔ)句運(yùn)用、表單的退出等知識(shí)點(diǎn)
本題解題思路:
第一步:在Visual FoxPro主窗口中按下組合鍵Ctrl+N,系統(tǒng)彈出"新建"對(duì)話框,在文件類(lèi)型中選擇"表單",點(diǎn)擊"新建文件"按鈕,系統(tǒng)將打開(kāi)表單設(shè)計(jì)器;或直接在命令窗口中輸入 crea form Myform3
第二步:點(diǎn)擊工具欄按鈕"表單控件工具欄",在彈出的"表單控件"工具欄中,選中"命令按鈕"控件,在表單設(shè)計(jì)器中拖動(dòng)鼠標(biāo),這樣在表單上得到一個(gè)"命令按鈕"控件command1,用同樣的方法為表單再加入一個(gè)"命令按鈕"控件command2;
相關(guān)控件的屬性值如下:
對(duì)象 屬性 屬性值
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é)號(hào) = Score1.學(xué)號(hào) ;
ON Course.課程號(hào) = Score1.課程號(hào);
GROUP BY Course.課程名;
INTO TABLE NEW_TABLE3
****命令按鈕command2(退出)的Click事件代碼如下****
thisform.release

