國家二級VF機試(操作題)模擬試卷17(共27題)_第1頁
國家二級VF機試(操作題)模擬試卷17(共27題)_第2頁
國家二級VF機試(操作題)模擬試卷17(共27題)_第3頁
國家二級VF機試(操作題)模擬試卷17(共27題)_第4頁
國家二級VF機試(操作題)模擬試卷17(共27題)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

國家二級VF機試(操作題)模擬試卷17(共9套)(共27題)國家二級VF機試(操作題)模擬試卷第1套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)使用SQL語句計算每個歌手的最高分、最低分和平均分,并將結(jié)果存儲到result.dbf表中(包含“歌手姓名”、“最高分”、“最低分”和“平均分”4個字段),要求結(jié)果按“平均分”降序排序。注意:按“歌手姓名”分組,每個歌手的最高分、最低分和平均分由評分表中的“分數(shù)”字段計算得出。(2)修改一個名稱為three.prg的命令文件。該命令文件用來查詢平均成績大于等于75分以上的每個“女”同學的學號、姓名、平均成績和選課門數(shù),結(jié)果按選課門數(shù)降序排序輸出到表three中。該命令文件在第2行、第3行、第4行、第5行有錯誤(每行只有一處必須修改的錯誤,不出錯的地方不要做任何修改),打開該命令文件,直接在錯誤處修改并保存。注意:修改時,不可改變sql語句的結(jié)構(gòu)和短語的順序,不允許增加或合并行。標準答案:(1)在命令窗口執(zhí)行如下SQL命令語句執(zhí)行查詢:(2)在命令窗口執(zhí)行命令:MODIFYCOMMANDthree,打開three.prg程序,經(jīng)修改后代碼如下(此處省略原錯誤程序代碼):知識點解析:暫無解析二、簡單應用題(本題共1題,每題1.0分,共1分。)2、在考生文件夾下,打開學生數(shù)據(jù)庫SDB,完成如下簡單應用:(1)使用查詢設計器設計一個名稱為two的查詢,查詢每個同學的學號(來自student表)、姓名、課程名和成績。查詢結(jié)果先按課程名升序、再按成績降序排序,查詢?nèi)ハ蚴潜恚砻莟wo。設計完成后,運行該查詢。(2)修改一個名稱為three.prg的命令文件。該命令文件用來查詢平均成績大于等于75分以上的每個“女”同學的學號、姓名、平均成績和選課門數(shù),結(jié)果按選課門數(shù)降序排序輸出到表three中。該命令文件在第2行、第3行、第4行、第5行有錯誤(每行只有一處必須修改的錯誤,不出錯的地方不要做任何修改),打開該命令文件,直接在錯誤處修改并保存。注意:修改時,不可改變sql語句的結(jié)構(gòu)和短語的順序,不允許增加或合并行。標準答案:(1)步驟1:命令窗口執(zhí)行:OPENDATABASEsdb,打開數(shù)據(jù)庫環(huán)境。步驟2:命令窗口執(zhí)行:CREATEQUERYtwo,打開查詢設計器,在“添加表或視圖”中,分別雙擊student、sc和course表,添加到查詢設計器中,添加的表會自動在查洵設計器中建立聯(lián)系。步驟3:“字段”選項k的“可用字段”中,依次雙擊“student.學號”、“student.姓名”、“course.課程名”、“sc.成績”,將它們添加到“選定字段”列表中。步驟4:在“排序依據(jù)”選項卡內(nèi)雙擊“選定字段”列表框中的“course.課程名”添加到“排序條件”列表框中,“排序選項”選“升序”;雙擊“選定字段”中的“sc成績”,添加到“排序條件”中,“排序選項”選“降序”。步驟5:執(zhí)行【查詢】→【查詢?nèi)ハ颉坎藛蚊?,在“查詢?nèi)ハ颉睂υ捒蛑袉螕簟氨怼卑粹o,在“表名”中輸入文件名two,單擊“確定”按鈕。步驟6:最后單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將查詢文件保存到考生文件夾下。(2)步驟1:命令窗口執(zhí)行:NODIFYCONNANDthree,打開three.prg程序,命令代碼如下:1OPENDATABASEsdb2SELECT學號,姓名,AVG(成績)AS平均成績,COUNT(成績)AS選課門數(shù);3FROHstudentJOINscOFstudent.學號=sc.學號;4WHERE性別="女"ANDAVG(成績)>=75;5GROuPBY學號;6ORDERBY4desc:7INTOTABLEthree修改程序中的錯誤行,修改后的程序如下:1OPENDATABASEsdb2SELECTstudent.學號,姓名,AVG(成績)平均成績,COUNT(成績)選課門數(shù);&&在“學號”段前加前綴“student”,指明“學號”來student表3FROMstudentJOINscONstudent.學號=sc.學號;&&內(nèi)聯(lián)接查詢中聯(lián)接條件使用ON短語4WHERE性別="女";5GROUPBYstudent.學號HAVINGAVG(成績)>=75;&&having短語用來指定分組的條件6ORDERBY4desc;7INTOTABLEthree步驟2:單擊“常用”工具欄中的“保存”按鈕,將程序文件保存到考生文件災下。知識點解析:(1)本題主要考查的是查詢設計器的使用,首先要判斷查詢數(shù)據(jù)源包括哪些數(shù)據(jù)表,將數(shù)據(jù)表添加到查詢設計器后,再根據(jù)題目要求從每個表中選取字段,設置查詢條件等完成查詢。本題操作時要注意3個表的添加順序,要按照student表、sc表和course表的順序進行添加,否則會導致兩個表之間無法建立聯(lián)系,或是導致查詢出錯。(2)本題主要考查SQL的聯(lián)接查詢和分組計算查詢。聯(lián)接查詢要判斷查詢輸出字段來自哪個表,再正確設置聯(lián)接條件。在使用內(nèi)聯(lián)接時,聯(lián)接條件應使用ON短語。當FRON之后的多個關(guān)系中含有相同的屬性名時,須用關(guān)系前綴指明屬性所屬的關(guān)系,本查詢中用到student和sc表中都含有“學號”字段,故應寫為“stud.學號”。“平均成績大于等于75”是分組條件,使用HAVING短語。三、綜合應用題(本題共1題,每題1.0分,共1分。)3、設計名為formbook的表單(控件名為foml,文件名為formbook)。表單的標題設為“圖書情況統(tǒng)計”。表單中有一個組合框(名稱為Comb01)、一個文本框(名稱為Textl)和兩個命令按鈕“統(tǒng)計”(名稱為Commandl)和“退出”(名稱為Command2)。如圖3-19所示。運行表單時,組合框中有三個條目“清華”、“北航”、“科學”(只有三個出版社名稱,不能輸入新的)可供選擇,在組合框中選擇出版社名稱后,如果單擊“統(tǒng)計”命令按鈕,則文本框顯示出“圖書”表中該出版社圖書的總數(shù)。單擊“退出”按鈕關(guān)閉表單。注意:完成表單設計后要運行表單的所有功能。標準答案:步驟1:命令窗門執(zhí)行:CREATEFORMform-book,打開表單設計器新建表單。從“表單控件”工具欄中向表單添加一個組合框、一個文本框及兩個命令按鈕控件。步驟2:選擇表甲刪’象,修改劉’象屬性值,見表4-25。步驟3:編寫各個命令按鈕的Click事件代碼如下:*****“統(tǒng)計”按鈕的Click事件代碼*****1SELECTCOUNT(*)FROMBOOKWHERE出版社=THISFORM.COMB01.DISPLAYVALUE;2INTOARRAYTEMP3THISFORM.TEXTl.VALUE=TEMP(1)*****“退出”按鈕的C1ick事件代碼*****THISFORM.RELEASE步驟4:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將表單文什保存到考生文件夾下。知識點解析:本大題考查了表單及控件的常用屬性和方法的設置;SQL簡單查詢。本題的關(guān)鍵是“統(tǒng)計”命令按鈕的Click事件的編寫,這里求總數(shù)用count()函數(shù),組合框當前值用Value屬性表示,將求出的總數(shù)存放到數(shù)組中,再將數(shù)組中的值賦給文本框的value值(即文本框中顯示的內(nèi)容)。國家二級VF機試(操作題)模擬試卷第2套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)建立數(shù)據(jù)庫ordersmanage.dbc。把自由表employee.dbf和orders.dbf添加到數(shù)據(jù)庫中。(2)打開表單dh.scx,設置標簽控件中英文字母的字號為18,保存表單。(3)打開表單dh.scx,為命令按鈕“隱藏”添加代碼,使表單運行時,單擊此按鈕隱藏表單上標簽控件label1;保存并運行該表單。(4)利用報表向?qū)Ы⒁粚Χ鄨蟊?,以employee表為父表,選擇其中“職工號”、“姓名”和“性別”字段;以orders表為子表,選擇其全部字段。報表樣式為“簡報式”,表之間的關(guān)聯(lián)通過“職工號”字段實現(xiàn),排序方式為按“職工號”降序,報表標題為“職工訂單”。報表其他參數(shù)取默認值。最后將生成的報表保存為empord.frx。標準答案:【操作步驟】(1)①命令窗口執(zhí)行:MODIFYDATABASEordersmanage,打開數(shù)據(jù)庫設計器。②在數(shù)據(jù)庫設計器中右擊,選擇【添加表】,在“打開”對話框中雙擊“employee”表添加到數(shù)據(jù)庫中,同樣的方法將“orders”表添加到數(shù)據(jù)庫中。(2)①命令窗口執(zhí)行:MODIFYFORMdh,打開表單設計器修改表單。②修改標簽(Label1)的FontSize屬性值為:18,保存表單修改。(3)①接上一小題,編寫“隱藏”命令按鈕Click事件代碼如下:THISFORM.LABEL1.VISIBLE=.E.②保存表單修改,并運行表單查看修改結(jié)果。(4)①命令窗口執(zhí)行:OPENDATABASEordersmanage,打開ordersmanage數(shù)據(jù)庫環(huán)境。②執(zhí)行【文件】→【新建】菜單命令,或單擊“常用”工具欄的“新建”按鈕,在“新建”中選“報表”選項,單擊“向?qū)А卑粹o,在“向?qū)нx取”中選“一對多報表向?qū)А表?,單擊“確定”按鈕,啟動報表向?qū)А"邸安襟E1-從父表選擇字段”的“數(shù)據(jù)庫和表”中選“employee”表,雙擊“可用字段”中的“職工號”、“姓名”和“性別”字段,添加到“選定字段”中,單擊“下一步”。④在報表向?qū)У摹安襟E2-從子表選擇字段”界面的“數(shù)據(jù)庫和表”下選中“orders”表,將“可用字段”中的字段全部添加到“選定字段”中,單擊“下一步”按鈕。⑤“步驟3-為表建立關(guān)系”中系統(tǒng)自動建立兩個表的聯(lián)系,單擊“下一步”。⑥“步驟4-排序記錄”中雙擊“可用的字段或索引標識”中的“職工號”字段到“選定字段”列表中,再單擊“降序”單選項,單擊“下一步”。⑦“步驟5-選擇報表樣式”選中“樣式”列表中的“簡報式”,單擊“下一步”。⑧“步驟6-完成”中的“報表標題”下方文本框中輸入“職工訂單”,單擊“完成”按鈕。⑨在“另存為”對話框的“保存報表為:”框中輸入報表文件名empord,單擊“保存”按鈕。知識點解析:暫無解析二、簡單應用題(本題共1題,每題1.0分,共1分。)2、(1)打開程序文件progerr.prg,按文件中給出的功能要求改正其中的錯誤,以文件名prognew.prg重新保存該文件并運行程序。(2)建立頂層表單,表單文件名為myform.sex,表單控件名為myform,表單標題為“頂層表單”。為頂層表單建立菜單mymenu。菜單欄如圖2—24所示(無下拉菜單),單擊“退出”菜單時,關(guān)閉釋放此頂層表單,并返回到系統(tǒng)菜單(在過程中完成)。標準答案:(1)【操作步驟】步驟1:命令窗口執(zhí)行:MODIFYCOMMANDprogerr,打開progerr程序文件,文件中的命令代碼如下:*本題目需要在基本操作題的基礎(chǔ)上完成。本程序在表orders.dbf的基礎(chǔ)上完成如下功能:*(1)創(chuàng)建視圖viewes,視圖內(nèi)容為按職工號統(tǒng)計訂單金額(每個職工經(jīng)手的訂單總金額),統(tǒng)計結(jié)果包括:職工號、總金額;*(2)從視圖viewes中查詢訂單總金額在30000以上(含30000)的職工信息(職工號,總金額),查詢結(jié)果按總金額降序排序并存入表newtable.dbf。1OPENDATABASEORDERSMANAGE2CREATEviewsAS;3SELECT職工號,SUM(金額)AS總金額;4FROMORDERS;5GROUPBY職工號6SELECT*FROMORDERS;7WHERE總金額>=30000;8ORDERBY總金額DESC;修改程序中的錯誤行,修改后的程序如下:1OOPENDATABASEORDERSMANAGE2CREATEVIEWviewsAS;&&命令格式錯誤,建立視圖命令要使用CREATEVIEW……3SELECT職工號,SUM(金額)AS總金額;4FROMORDERS;5GROUPBY職工號6SELECT*FROMviews;&&從視圖views中查找,不是從orders表查詢,是第二處錯誤7WHERE總金額>=30000;8ORDERBY總金額DESC;9INTOTABLEnewtable&&將結(jié)果保存在表中步驟2:執(zhí)行【文件】→【另存為】菜單命令,在彈出的“另存為”對話框的“保存文檔為:”文本框中輸入新的文件名:prognew,單擊“保存”命令保存文件。步驟3:命令窗口執(zhí)行:DOprognew.prg,執(zhí)行程序。(2)【操作步驟】步驟1:命令窗口執(zhí)行:CREAYlEMENUmymenu,在“新建菜單”中單擊“菜單”按鈕。在菜單設計器“菜單名稱”中依次輸入“文件”、“編輯”和“退出”3個主菜單名。步驟2:選擇“退出”菜單命令的“結(jié)果”項為“過程”,單擊“過程”后面的“創(chuàng)建”按鈕打開過程編輯器,編寫過程代碼并輸入命令語句:myform.RELEASE。步驟3:執(zhí)行【顯示】→【常規(guī)選項】菜單命令,在“常規(guī)選項”中勾選“頂層表單”復選框,然后單擊“確定”保存修改。步驟4:執(zhí)行【菜單】→【生成】菜單命令,在彈出的對話框中單擊“是”按鈕,彈出“生成菜單”對話框,單擊“生成”按鈕生成一個可執(zhí)行的菜單文件,關(guān)閉菜單設計器。步驟5:命令窗口執(zhí)行:CREATEFORMmyform,打開表單設計器。選中表單,在“屬性”窗口中修改表單(myform)的屬性值,見表3—27。步驟6:編寫表單的Load事件代碼如下:DOmymenu.mprWITHTHIS,"TTT"步驟7:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將表單文件保存到考生文件夾下。知識點解析:暫無解析三、綜合應用題(本題共1題,每題1.0分,共1分。)3、打開表單文件sapp,并完成如下操作(不得有多余操作):①將“課程”表添加到表單的數(shù)據(jù)環(huán)境中。②使列表框List1中的數(shù)據(jù)項為“課程”表中的課程名(課程.課程名)。③單擊列表框中的數(shù)據(jù)項時,統(tǒng)計選修了所選課程的學生人數(shù)(從“考試成績”表),并將結(jié)果存儲在以課程名命名的表中,表中只有一個字段“人數(shù)”。④添加一個命令按鈕Command1,單擊該按鈕時關(guān)閉表單。說明:完成該程序后必須運行,并且分別統(tǒng)計選修了“數(shù)據(jù)庫”和“操作系統(tǒng)”課程的學生人數(shù)。標準答案:【操作步驟】步驟1:命令窗口執(zhí)行:OPENDATABASE學生管理,打開“學生管理”數(shù)據(jù)庫環(huán)境。步驟2:命令窗口執(zhí)行:MODIFYFORMsapp,修改sapp表單。右擊表單選擇【數(shù)據(jù)環(huán)境】,在表單數(shù)據(jù)環(huán)境中單擊右鍵選擇【添加】,在“添加表或視圖”對話框中雙擊“課程”,將表添加到數(shù)據(jù)環(huán)境中。步驟3:修改列表框(List1)的“RowSourceType”屬性值為:6.字段;再修改“RowSource”屬性值為:課程.課程名。步驟4:列表框(List1)Click事件代碼如下:*****列表框(List1)的Click事件代碼*****1aa=課程.課程名2SELECTCOUNT(*)AS人數(shù)FROM考試成績;3WHERE考試成績.課程編號=課程.課程編號;5INTOTABLE&aa步驟5:通過“表單控件”工具欄向表單添加一個命令按鈕,編寫按鈕的Click事件代碼:THISFORM.RELEASE。步驟6:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,并分別單擊“數(shù)據(jù)庫”和“操作系統(tǒng)”,生成表文件。知識點解析:暫無解析國家二級VF機試(操作題)模擬試卷第3套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)利用快捷菜單設計器創(chuàng)建一個彈出式菜單one,菜單有兩個選項:“增加”和“刪除”.兩個選項之間用分組線分隔。(2)創(chuàng)建一個快速搬表app_report,報表中包含了“評委表”中的所有字段。(3)建立一個數(shù)據(jù)庫文件“大獎賽.dbc”,并將“歌手表”、“評委農(nóng)”和“評分表”3個自由表添加到該數(shù)據(jù)庫中。(4)使用SQL的語句ALTERTABLE命令為“評委表”的“評委編號”字段增加有效性規(guī)則:“評委編號”的最左邊兩位字符是11(使用LEFT函數(shù)),并將該SQL涪句存儲在three.prg中,否則不得分。標準答案:【操作步驟】(1)①命令窗口執(zhí)行:CREATEMENuone,在“新建菜單”中單擊“陜捷菜單”按鈕,打開快捷菜單漩計器。②在菜單設計器“菜單名稱”列的文本框中輸入3個菜單項名“增加”、“、一”和“刪除”。執(zhí)行【菜單】→【生成】菜單命令,生成一個可執(zhí)行的菜單史件。(2)①命令窗口執(zhí)行:USE評委表。②命令窗口執(zhí)行:CREATEREPORTappreport,打扦報表設計器.執(zhí)行【報表】→【快速報表】菜單命令,在“快速報表”劉話框中單擊“確定”按鈕新建快速報表,預覽和保存報表設計。(3)①命令窗口執(zhí)行:MODUFYDATABASE大獎賽,新建數(shù)據(jù)庫并打開數(shù)據(jù)庫設計器。②在數(shù)據(jù)庫設計器中右擊鼠標,選擇【添加表】,在“打開”對話框中雙擊“歌手表”添加到數(shù)據(jù)庫中:同樣的方法,再將“評委表”和“評分表”添加到數(shù)據(jù)庫中。(4)①命令窗口執(zhí)行:MODIFYCOMMANDthree,打開程序文件編輯器中輸入如下程序代碼:ALTERTABLE評委表ALTER評委編號SETcHECKLEFT(評委編號,2)=11”②命令窗口執(zhí)行:DOthree,執(zhí)行程序文件。知識點解析:暫無解析二、簡單應用題(本題共1題,每題1.0分,共1分。)2、(1)在考生文件夾下創(chuàng)建表單文件formone.SCX,如圖3-28所示,其中包含一個標簽Label1、一個文本框Text1和一個命令按鈕Commandl,然后按相關(guān)要求完成相應操作,①如圖3.28所示設置表單、標簽和命令按鈕的Caption屬性。②設置文本框的Value屬性值為表達式Date()。③設置“查詢”按鈕的click事件代碼,使得表單運行時單擊該按鈕能夠完成如下查詢功能:從customers表中查詢指定日期以后出生的客戶,查詢結(jié)果依次包含“姓名”、“性別”、“出生日期”3項內(nèi)容.各記錄按“出生日期”降序排序,查詢?nèi)ハ驗楸韙ableone。最后運行該表單,查詢1980年1月1日以后出生的客戶。(2)向名為“訂單管理”的數(shù)據(jù)庫(在基本操作題中建立)添加orderitems表。然后在數(shù)據(jù)庫中創(chuàng)建視圖viewone:利用該視圖可以從orderitems表查詢統(tǒng)計各商品的訂購總量,查詢結(jié)果依次包含“商品號”和“訂購總量”(即所有訂單對該商品的訂購數(shù)量之和)兩項內(nèi)容,各記錄按“商品號”升序排序。最后利用該視圖查詢視圖中的全部信息,并將查詢結(jié)果存放在表tabletwo中。標準答案:(1)【操作步驟】步驟1:命令窗口執(zhí)行:CREATEFORMform。ne,打開表單設計器新建表單。步驟2:向表單添加一個標簽、一個文本框和一個命令按鈕控件。選擇表單對象,修改對象屬性值,見表4.33。步驟3:編寫“查詢”命令按鈕的的Click事件代碼:SELECT姓名,性別,出生日期;FROMcustomers;WHERECustomers.出生日期>thisform.textl.valme;ORDERBY出生日期DESC;INTOTABLEtablennedbf步驟4:單擊“常用”工具欄的“運行”按鈕保存并運行表單,文本框中輸入“01/01/1980”后單擊“查詢”按鈕。(2)【操作步驟】步驟1:命令窗口執(zhí)行:MODIFYDATABASE單管里。在數(shù)據(jù)庫設計器中右擊,選擇【添加表】,在“打開”對話框中雙擊orderitems表添加到數(shù)據(jù)庫中。步驟2:在命令窗口執(zhí)行如下SQL命令語句建立視圖:OPENDATABASE訂單管理CREATEVIEWviewoneAS;SELECTOrderitems.商品號,SUM(Orderitems.數(shù)量)AS訂購總量;FROM訂單管理.iorderitems;GROUPBYOrderitems.商品號;ORDERBYOrderitems.商品號(注意:以上SQL語句查詢語句部分是通過視圖設計器生成,也町以在視圖設計器中建立。)步驟3:在命令窗口執(zhí)行如下SQL語句保存查詢結(jié)果:SELECT*FROMviewoneINTOTABLEtabletwo知識點解析:暫無解析三、綜合應用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下創(chuàng)建一個下拉式菜單myimenu.mnx,并生成菜單程序mymenu.mrr。運行該菜單程序時會在當前VFP系統(tǒng)菜單的末尾追加一個“考試”子菜單,如圖3一11所示。菜單命令“計算”和“返回”的功能都通過執(zhí)行過程完成。菜單命令“計算”的功能是從xuesheng表和chengii表中找出所有滿足如下條件的學生:其在每門課程上的成績都大丁等十所有同學在該門課程上的平均分。并把這些學牛的學號和姓名保存在表table2中(表中只包含學號和姓名兩個字段),表table2中各記錄應該按“學號”降序排序。提示:各門課程的平均分可用下面SQL語句獲得:selectavg(數(shù)學),avg(英語),avg(信息技術(shù))fromchengjiintoarfaytmp,菜單命令“返回”的功能是恢復標準的系統(tǒng)菜單。菜單程序生成后,運行菜單程序并依次執(zhí)行“計算”和“返回”菜單命令。標準答案:【操作步驟】步驟1:在命令窗口執(zhí)行命令:CREATEMENUmymenumnx,在彈出的“新建菜單”對話框中單擊“菜單”,圖標按鈕,打開菜單設計器。步驟2:在菜單設計器“菜單名稱”列的文本框中輸入“考試”,“結(jié)果”下拉框中選擇為“子菜單”,單擊“創(chuàng)建”,按鈕進入下級菜單設計,在“菜單名稱”列的第1、2行文本框中依次輸入子菜單名“計算”、“返回”,將兩個子菜單的“結(jié)果”都設置為“過程”,分別單擊兩個子菜單行的“創(chuàng)建”命令按鈕,打開過程編輯框編寫過程代碼。步驟3:兩個子菜單的過程代碼如下:*****“計算”子菜單的過程代碼*****selectavg(數(shù)學),avg(英語),avg(信息技術(shù));fromchengjiintoarraytttselectxuesheng.學號,姓名;fromxueshengJoinchengji;ollxuesheng.學號=chengji.學號;where數(shù)學>=ttt(1);and英語>=ttt(2);and信息技術(shù)>=ttt(3);orderbyxuesheng.學號desc;intotabletable2****“返回”子菜單的過程代碼*****SETSYSMENUNOSAVESETSYSMENUTODEFAULT步驟4:執(zhí)行【顯示】→【常規(guī)選項】菜單命令,在“位置”區(qū)域選中“追加”單選項,則新建立的子菜單會在當前VisualFoxPro系統(tǒng)菜單后顯示。步驟5:執(zhí)行【菜單】→【生成】菜單命令,在彈出的VisualFoxPro對話框中單擊“是”按鈕,接著系統(tǒng)會彈出“生成菜單”對話框,單擊“牛成”按鈕生成一個可執(zhí)行的菜單文件。步驟6:在命令窗口執(zhí)行命令:DOmymenu.mpr,運行菜單,并執(zhí)行“統(tǒng)計”菜單命令。知識點解析:暫無解析國家二級VF機試(操作題)模擬試卷第4套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)利用快捷菜單設計器創(chuàng)建一個彈出式菜單one,菜單有兩個選項:“增加”和“刪除”,兩個選項之間用分組線分隔。(2)創(chuàng)建一個快速報表app_report,報表中包含了“評委表”中的所有字段。(3)建立一個數(shù)據(jù)庫文件“大獎賽.dbc”,并將“歌手表”、“評委表”和“評分表”3個自由表添加到該數(shù)據(jù)庫中。(4)使用SQL的語句ALTERTABLE命令為“評委表”的“評委編號”字段增加有效性規(guī)則:“評委編號”的最左邊兩位字符是11(使用LEFT函數(shù)),并將該SQL語句存儲在three.prg中,否則不得分。標準答案:(1)①命令窗口執(zhí)行:CREATEMENUone,在“新建菜單”中單擊“快捷菜單”按鈕,打開快捷菜單設計器。②在菜單設計器“菜單名稱”列的文本框中輸入3個菜單項名“增加”、“\—”和“刪除”。執(zhí)行【菜單】→【生成】菜單命令,生成一個可執(zhí)行的菜單文件。(2)①命令窗口執(zhí)行:USE評委表。②命令窗口執(zhí)行:CREATEREPORTappreport,打開報表設計器,執(zhí)行【報表】→【快速報表】菜單命令,在“快速報表”對話框中單擊“確定”按鈕新建快速報表,預覽和保存報表設計。(3)①命令窗口執(zhí)行:MODIFYDATABASE大獎賽,新建數(shù)據(jù)庫并打開數(shù)據(jù)庫設計器。②在數(shù)據(jù)庫設計器中右擊鼠標,選擇【添加表】,在“打開”對話框中雙擊“歌手表”添加到數(shù)據(jù)庫中:同樣的方法,再將“評委表”和“評分表”添加到數(shù)據(jù)庫中。(4)①命令窗口執(zhí)行:MODIFYCOMMANDthree,打開程序文件編輯器中輸入如下程序代碼:ALTERTABLE評委表ALTER評委編號SETCHECKLEFT(評委編號,2)="11"②命令窗口執(zhí)行:DOthree,執(zhí)行程序文件。快捷菜單設計;創(chuàng)建簡單報表;使用數(shù)據(jù)庫;SQL表結(jié)構(gòu)修改。知識點解析:本題考查了快捷菜單的設計;快速報表的創(chuàng)建;數(shù)據(jù)庫的基本操作;字段有效性規(guī)則的設置??旖莶藛蝺H包括一個彈出式菜單,其他設計基本上都與下拉菜單的設計一致。在報表設計器中可通過菜單命令啟動建立快速報表的功能,建立快速報表前應先指定報表的數(shù)據(jù)源。SQL的表結(jié)構(gòu)修改語句:ALTERTABLE<表名>ALTERIADD<字段名>SETCHECK<表達式>可以設置表中指定字段的有效性規(guī)則。二、簡單應用題(本題共1題,每題1.0分,共1分。)2、(1)建立一個文件名和表單名均為two的表單,然后為表單two建立一個名為quit的新方法(單擊選擇表單后,從“表單”菜單中選擇“新建方法程序”命令),并在該方法中寫一條語句Thisform.release:最后向表單中添加一個命令按鈕(Commandl),并在該命令按鈕的Click事件中寫一條調(diào)用新方法quit的語句。(2)使用SQL語句計算每個歌手的最高分、最低分和平均分,并將結(jié)果存儲到result.dbf表中(包含“歌手姓名”、“最高分”、“最低分”和“平均分”4個字段),要求結(jié)果按“平均分”降序。注意:按“歌手姓名”分組;每個歌手的最高分、最低分和平均分由評分表中的“分數(shù)”字段計算出。標準答案:(1)步驟1:命令窗口執(zhí)行:CREATEFORMtwo,打開表單設計器新建表單。步驟2:執(zhí)行【表單】→【新建方法程序】菜單命令,在“新建方法程序”對話框的“名稱”文本框中輸入“quit”,單擊“添加”按鈕新增方法,然后關(guān)閉對話框。步驟3:在“屬性”窗口中雙擊quit方法,打開用戶自定義過程代碼框輸入:THISFORM.RELEASE。步驟4:通過“表單控件”工具欄向表單添加一個命令按鈕(Commandl),雙擊命令按鈕,編寫該按鈕的Click事件代碼:THISFORM.QUIT。步驟5:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將表單文件保存到考生文件夾下。表單的事件、方法和屬性。(2)在命令窗口執(zhí)行如下SQL命令語句執(zhí)行查詢:SELECT歌手表.歌手姓名,MAX(評分表.分數(shù))AS最高分,;MIN(評分表.分數(shù))AS最低分,AVG(評分表.分數(shù))AS平均分;FROM大獎賽!歌手表INNERJOIN大獎賽!評分表;ON歌手表,歌手編號=評分表.歌手編號;GROUPBY歌手表,歌手姓名;ORDERBY4DESC;INTOTABLEresult(注意:以上SQL查詢語句是通過查詢設計器生成,大家也可以直接在查詢設計器中完成查詢。)SQL分組與計算查詢。知識點解析:(1)本題考查的是表單方法的創(chuàng)建。在VisualFoxPro中,用戶首先應打開“新建方法程序”對話框定義新方法名:然后在“屬性”面板中定義找到該方法并編寫該方法的功能代碼:方法建立完畢后,用戶可以像調(diào)用表單中其他方法一樣調(diào)用新建的方法。(2)本題主要考查了SQL分組與計算查詢。本題在輸出字段中除“歌手姓名”字段是表中原有的字段外,最高分、最低分和平均分都需要根據(jù)“分數(shù)”字段生成,分別使用計算函數(shù)MAX()、MIN()和AVG()。由于是求每個歌手的最高分、最低分和平均分,可以根據(jù)“歌手姓名”字段進行分組計算。也可以借助查詢設計器生成本題的SQL語句。三、綜合應用題(本題共1題,每題1.0分,共1分。)3、①建立一個表單名和文件名均為myform的表單。表單的標題是“評委打分情況”,表單中有兩個命令按鈕(Commandl和Command2)和兩個單選鈕(Optionl和Option2)。Commandl和Command2的標題分別是“生成表”和“退出”,Optionl和Option2的標題分別是“按評分升序”和“按評分降序”。②為“生成表”命令按鈕編寫程序,程序的功能是根據(jù)簡單應用題生成的result.dbf表按指定的排序方式生成新的表,單選鈕選擇“按評分升序”時,依次按“最高分”、“最低分”和“平均分”3個字段升序排序生成表six_a,單選鈕選擇“按評分降序”時,依次按“最高分”、“最低分”和“平均分”3個字段降序排序生成表six_d。③運行表單,選擇“按評分升序”單選鈕,單擊“生成表”命令按鈕;再選擇“按評分降序”單選鈕,單擊“生成表”命令按鈕(注意:必須執(zhí)行)。標準答案:步驟1:命令窗口執(zhí)行:CREATEFORMmyform,新建表單。向表單添加一個選項按鈕組和兩個命令按鈕控件。步驟2:選擇表單對象,修改對象屬性值,見表4—31。步驟3:編寫各個命令按鈕的Click事件代碼如下:*****“生成表”按鈕的Click事件代碼*****IFthisform.optiongroupl.optionl.value=1SELECT*FROMresult;ORDERBY最高分,最低分,平均分;INTODBFsixaELSESELECT*FROMresult;ORDERBY最高分DESC,最低分DESC,平均分DESC;INTODBFsixdENDIF*****“退出”按鈕的Click事件代碼*****THISFORM.RELEASE步驟4:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,按照題目要求生成兩個數(shù)據(jù)表文件,保存表單文件。表單的事件、方法和屬性;基本型控件;SQL簡單查詢;程序基本結(jié)構(gòu)。知識點解析:本大題考查了表單及控件的常用屬性和方法的設置:IF條件語句:SQL簡單的聯(lián)接查詢。本題修改選項組單選按鈕的標題屬性值時,要注意選項組處于“編輯”狀態(tài)。查詢時需要判斷被選定的是哪個單選項來執(zhí)行相應的功能。選項組中獲得當前被選中單選項的返回值屬性是Value,可以通過IF條件語句判斷。SQL程序中對多個字段排序時,各字段間要用逗號隔開,升序使用ASC短語(可省略),降序使用DESC短語。國家二級VF機試(操作題)模擬試卷第5套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考試文件夾下完成下列操作:(1)新建一個名為“學?!钡臄?shù)據(jù)庫文件,將自由表“教師表”、“職稱表”和“學院表”添加到該數(shù)據(jù)庫中。(2)在“學校”數(shù)據(jù)庫文件中,為“職稱表”建立主索引,索引表達式為“職稱級別”,索引名為indexone。(3)使用報表向?qū)椤奥毞Q表”建立一個報表myreport,選定“職稱表”的全部字段,按“職稱級別”字段降序排序,其他選項選擇默認值。(4)修改test.prg中的語句,該語句的功能是將“職稱表”中所有職稱名為“教授”的記錄的“基本工資”存儲于一個新表prof.dbf中,新表中包含“職稱級別”和“基本工資”兩個字段,并按“基本工資”升序排列。最后運行程序文件test.prg。標準答案:【操作步驟】(1)單擊常用工具欄“新建”按鈕或選擇菜單欄“文件”一“新建”命令,新建一個數(shù)據(jù)庫,在彈出的對話框中輸入文件名“學?!薄T诖蜷_的數(shù)據(jù)庫設計器中,右鍵單擊數(shù)據(jù)庫空白處,選擇“添加表”命令,將考生文件夾下的“教師表”、“職稱表”和“學院表”添加到數(shù)據(jù)庫中。(2)在“數(shù)據(jù)庫設計器一學校”中,右鍵單擊“職稱表”,選擇“修改”命令,在打開的表設計器中,單擊“索引”選項卡,輸入索引名稱“職稱級別”,類型設為“主索引”,表達式為“職稱級別”。單擊“確定”按鈕保存對表的修改。(3)單擊常用工具欄“新建”按鈕,新建一個報表,使用報表向?qū)陆▓蟊?。在步驟1-字段選取中,將“職稱表”的全部字段添加到選定字段中。其他步驟默認,直接單擊下一步。在步驟5-排序記錄選項卡下,設置按“職稱級別”降序排列。在步驟6-完成中,單擊“完成”按鈕。然后單擊常用工具欄“保存”按鈕,輸入報表名稱“myreport”。(4)單擊常用工具欄“打開”按鈕,打開考生文件夾下的程序文件“test.prg”,根據(jù)題目要求將“select職稱級別,基本工資from職稱表where職稱名=”教授”todbfprof.dbfgroupby基本工資”修改為“select職稱級別,基本工資from職稱表where職稱名:”教授”intodbfprof.dbfOrderby基本工資”。然后單擊常用工具欄的“運行”按鈕,運行程序。知識點解析:暫無解析二、簡單應用題(本題共1題,每題1.0分,共1分。)2、在考生文件夾下完成下列操作:(1)請修改并執(zhí)行程序temp.prg,該程序的功能是:根據(jù)“教師表”和“職稱表”計算每位教師的“應發(fā)工資”,每個教師的“應發(fā)工資”等于:與“職稱級別”相符的“基本工資”+“課時”×80×職稱系數(shù),教授的職稱系數(shù)為1.4,副教授的職稱系數(shù)為1.3,講師的職稱系數(shù)為1.2,助教的職稱系數(shù)為1.0,計算結(jié)果存儲于自由表salary.dbf中,salary.dbf中的字段包括姓名、系號和應發(fā)工資,并按系號降序排列,系號相同時按應發(fā)工資升序排列。注意,只能修改標有錯誤的語句行,不能修改其他語句行。(2)創(chuàng)建一個新類MyCheckBox,該類擴展VisualFoxpro的CheckBox基類,新類保存在考生文件夾下的myclasslib類庫中。在新類中將Value屬性設置為1。創(chuàng)建一個表單MyForm,然后在表單中添加一個基于新類MyCheckBox的復選框,如圖所示。標準答案:(1)【操作步驟】打開考生文件夾下的程序文件“temp.prg”,根據(jù)題目要求修改SQL語句如下:第一處錯誤:create職稱系數(shù)表(職稱名c(6),職稱系數(shù)f(10,2))修改為:createtable職稱系數(shù)表(職稱名c(6),職稱系數(shù)f(10,2))第二處錯誤:insertinto職稱系數(shù)表value(”教授”,1.3)修改為:insertinto職稱系數(shù)表value(”副教授”,1.3)第三處錯誤:FROM職稱系數(shù)表,教師表;修改為:FROM職稱表,職稱系數(shù)表,教師表;第四處錯誤:OR職稱表.職稱名=職稱系數(shù)表.職稱名;修改為:AND職稱表.職稱名=職稱系數(shù)表.職稱名;保存對程序的修改并運行。(2)【操作步驟】步驟1:通過“新建”對話框新建一個“類”文件。步驟2:在彈出的“新建類”對話框中,輸入“類名”MyCheckBox,在“派生于”下拉列表中選擇checkbox,單擊“存儲于”文本框后的按鈕,在打開的“另存為”對話框選擇考生文件夾,輸入文件名myclasslib,單擊“確定”按鈕。步驟3:打開“類設計器”窗口,進入類設計器環(huán)境,將Value屬性為1。然后關(guān)閉類設計器。步驟4:通過“新建”對話框新建一個表單,在表單設計器中,單擊表單控件工具欄中“查看”按鈕,選擇“添加”命令,在彈出的對話款中打開“myclassib”。然后在表單控件工具欄中單擊“checkbox”按鈕,向表單添加一個復選框按鈕。單擊常用工具欄的“保存”按鈕,保存表單為“myform”。知識點解析:暫無解析三、綜合應用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下完成下列操作:(1)建立一個文件名和表單名均為formtest的表單,表單中包括一個標簽(Label1)、一個列表框(List1)、一個表格(Grid1)。(2)在表單的數(shù)據(jù)環(huán)境中添加“學院表”和“教師表”。(3)通過屬性窗口將標簽的標題設為“系名”。(4)列表框用于顯示系名,通過屬性窗口將列表框(List1)的RowSource和RowSourceType屬性指定為“學院表.系名”和6。(5)表格用于顯示所有教師的相關(guān)信息,通過屬性窗口將表格(Gridl)的RecordSource和RecordSourceType屬性指定為“select職工號,姓名,課時from教師表intocursortmp”和4。(6)為列表框(Listl)的Dbclick事件編寫程序。程序的功能是:表單運行時,用戶雙擊列表框中的選項時,將所選系教師的“職工號”、“姓名”和“課時”三個字段的信息存人自由表two.dbf中,表中的記錄按“職工號”降序排列。(7)運行表單,在列表框中雙擊“信息管理”。標準答案:【操作步驟】步驟1:通過“新建”對話框新建一個表單,向表單添加一個標簽、一個列表框和一個表格控件,適當調(diào)整各控件的大小及位置。步驟2:在表單空白處單擊鼠標右鍵,選擇“數(shù)據(jù)環(huán)境”命令,將“學院表”和“教師表”添加到數(shù)據(jù)環(huán)境中。步驟3:在表單設計器窗口下,將標簽(Label1)控件的caption屬性修改為“系名”。將列表框(List1)控件的RowSource屬性設為“學院表.系名”,RowSourceType屬性改為“6”。步驟4:在表單設計器下,將表格(Grid)控件的RecordSource屬性設為“select職工號,姓名,課時from教師表intocursortmp”,RecordSoureeType屬性設為“4”。步驟5:雙擊列表框控件(List1),編寫其Dblclick事件代碼如下:Thisform.Grid1.RecordSource=”SELECT職工號,姓名,課時.FROM學院表,教師表;WHERE學院表.系號=教師表.系號;AND系名=ALIXRIM(Thisform.List1.Value)INTOtabletwo.dbf;orderby職工號DESC”步驟6:保存表單并命名為“formtest”,然后單擊常用工具欄的“運行”按鈕,運行表單。根據(jù)題目要求,在列表框中雙擊“信息管理”。知識點解析:暫無解析國家二級VF機試(操作題)模擬試卷第6套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考生文件夾下,有一表單文件myform.scx。打開該表單文件,然后在表單設計器環(huán)境下完成如下操作:(1)在屬性窗口中將表單設置為不可移動的,并將其標題設置為“表單操作”。(2)為表單新建一個名為mymethod的方法,方法代碼為:wait"mymethod"window。(3)設置Ok按鈕的Click事件代碼,其功能是調(diào)用表單的mymethod方法。(4)設置Cancel按鈕的Click事件代碼,其功能是關(guān)閉當前表單。標準答案:(1)①在命令窗口執(zhí)行命令:MODIFYFORMmyform,打開表單設計器修改表單。②選中表單,在“屬性”面板中修改表單(Form1)的。Movable屬性值為:.F,修改Caption屬性值為:表單操作。(2)①接上一小題操作,執(zhí)行【表單】→【新建方法程序】菜單命令,在彈出的“新建方法程序”對話框的“名稱”文本框中輸入“mymethod”,單擊“添加”按鈕新增方法,然后關(guān)閉對話框。如圖3.23所示。②接著在“屬性”窗口中雙擊此方法,打開用戶自定義過程代碼框輸入:wait"mymethod"window。(3)接上一小題操作,雙擊“Ok”命令按鈕,編寫該按鈕的Click事件代碼:THISFORM.Mymethod。(4)①接上一小題操作,雙擊“Cancel”命令按鈕,編寫該按鈕的Click事件代碼:THISFORM.RELEASE。②單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將表單文件保存到考生文件夾下。知識點解析:表單及控件的常用屬性及方法的設置。在VisualFoxPro中,用戶可以自定義方法,首先應打開“新建方法程序”對話框定義新方法名;然后在“屬性”面板中定義找到該方法并編寫該方法的功能代碼;方法建立完畢后,用戶可以像調(diào)用表單中其他方法一樣調(diào)用新建的方法。另外,要將表單設置為不可移動的,可以通過表單的Movable屬性進行設置。二、簡單應用題(本題共1題,每題1.0分,共1分。)2、(1)打開表單myform4.4,把表單(名稱為Form1)標題改為“歡迎您”,將文本“歡迎您訪問系統(tǒng)”(名稱為labell的標簽)的字號改為25,字體改為黑體。再在表單上添加“關(guān)閉”(名稱為Command1)命令按鈕,單擊此按鈕關(guān)閉表單。最后保存并運行表單。(2)設計一個表單MYFORM4,表單中有兩個命令按鈕“查詢”(名稱為Command1)和“退出”(名稱為Command2)。①單擊“查詢”按鈕,查詢bookauth數(shù)據(jù)庫中出版過三本以上(含三本)圖書的作者信息,查詢信息包括:作者姓名,所在城市:查詢結(jié)果按作者姓名升序保存在表newview4中。②單擊“退出”按鈕關(guān)閉表單。注意:完成表單設計后要運行表單的所有功能。標準答案:(1)步驟1:命令窗口執(zhí)行:MODIFYFORMMYFORM4-4,打開表單設計器。向表單添加一個命令按鈕控件。步驟2:修改對象屬性值,見表3-31。步驟3:雙擊命令按鈕,編寫其Click事件代碼。*****“關(guān)閉”按鈕的Click事件代碼*****THISFORM.RELEASE步驟4:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將表單文件保存到考生文件夾下。(2)步驟1:命令窗口執(zhí)行:MODIFYFORMmyform4,打開表單設計器。向表單添加兩個命令按鈕控件。步驟2:修改對象屬性值,見表3.32。步驟3:編寫各個命令按鈕的Click事件代碼。*****“查詢”按鈕的C1ick事件代碼*****1SELECTAuthors.作者姓名,Authors.所在城市;2FROMauthors,books;3WHEREAuthors.作者編號=Books.作者編號;4GROUPBYAuthors.作者姓名HAVINGCOUNT(Books.圖書編號)>=3;5ORDERBYAuthors.作者姓名;6INTOTABLENEWVIEW4*****“退出”按鈕的Click事件代碼*****THISFORM.RELEASE步驟4:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將表單文件保存到考生文件夾下。知識點解析:(1)本題考查了表單和常用控件的屬性;表單事件代碼的編寫。關(guān)閉和釋放表單的方法是RELEASE。(2)本題考查了表單事件代碼的編寫,SQL查詢。根據(jù)題意,查詢用了authors和books兩張表,連接查詢,按“作者姓名”分組,計算圖書數(shù)量用COunt()函數(shù)。三、綜合應用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下,對“雇員管理”數(shù)據(jù)庫完成如下綜合應用:①建立一個名稱為VIEW1的視圖,查詢每個雇員的部門號、部門名、雇員號、姓名、性別、年齡和EMAIL。②設計一個名稱為form2的表單,表單上設計一個頁框,頁框(PageFrame1)有“部門”(Pagel)和“雇員”(Page2)兩個選項卡,在表單的右下角有一個“退出”命令按鈕,如圖2.30所示。要求如下:.表單的標題名稱為“商品銷售數(shù)據(jù)輸入”。.單擊選項卡“雇員”時,在選項卡“雇員”中使用“表格”方式顯示view1視圖中的記錄(表格名稱為grdView1)。.單擊選項卡“部門”時,在選項卡“部門”中使用“表格”方式顯示“部門”表中的記錄(表格名稱為“grd部門”)。.單擊“退出”命令按鈕時,關(guān)閉表單。要求:將視圖view1和表“部門”添加到數(shù)據(jù)環(huán)境,并將視圖view1和表“部門”從數(shù)據(jù)環(huán)境直接拖拽到相應的選項卡自動生成表格。標準答案:步驟1:在命令窗口執(zhí)行命令:OPENDATABASE雇員管理,打開“雇員管理”數(shù)據(jù)庫。步驟2:在命令窗口執(zhí)行命令:CREATEVIEWVIEW1AS;SELECT雇員.部門號,部門.部門名,雇員.雇員號,雇員.姓名,雇員.性別,雇員.年齡,雇員.email;FROM雇員管理!雇員,雇員管理!部門;WHERE雇員.部門號=部門.部門號步驟3:在命令窗口執(zhí)行命令:CREATEFORMFORM2,打開表單設計器新建表單。從“表單控件”工具欄中向表單添加一個頁框和一個命令按鈕控件。步驟4:在“屬性”面板的下拉框中選擇表單對象,在“全部”選項卡中修改對象屬性值,見表3—34。步驟5:右擊表單選擇【數(shù)據(jù)環(huán)境】快捷菜單命令打開表單數(shù)據(jù)環(huán)境,繼續(xù)在表單數(shù)據(jù)環(huán)境中單擊右鍵選擇【添加】快捷菜單命令,在“添加表或視圖”對話框中依次雙擊view1視圖和“部門”表,將其添加到數(shù)據(jù)環(huán)境中。步驟6:右擊“頁框”控件,選擇【編輯】快捷菜單命令,讓頁框處于編輯狀態(tài),再將數(shù)據(jù)環(huán)境中的viewl視圖和“部門”表分別拖到“雇員”和“部門”頁面中(注意:在操作過程中,當獨立的頁面被選中時,頁框處于編輯狀態(tài),在頁框四周會出現(xiàn)藍色邊框;另外;表單設計器窗口應為“還原”狀態(tài),而非最大化窗口,否則將遮蓋表單數(shù)據(jù)環(huán)境內(nèi)容,無法將表拖到頁面中)。這時,在“雇員”和“部門”頁面中會分別自動生成表格grdView1和grd部門。步驟7:雙擊“退出”命令按鈕,編寫命令按鈕的Click事件代碼如下:THISFORM.RELEASE。步驟8:單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將表單文件保存到考生文件夾下。知識點解析:本題的第1小題主要考查了利用SQL命令建立視圖。利用SQL命令建立視圖的基本命令格式為:CREATEVIEW<視圖名>AS。建立視圖的SQL語句可以通過視圖設計器生成。第2小題主要考查了表單及控件的常用屬性的設置:表單數(shù)據(jù)環(huán)境。通過拖放表單數(shù)據(jù)環(huán)境中的表到表單中,可快速建立表格及表格與數(shù)據(jù)表的聯(lián)系,要注意的是在向每個頁面中添加表格數(shù)據(jù)對象時,注意頁面要處于編輯狀態(tài)下(每個頁面都可單獨選定,將表從數(shù)據(jù)環(huán)境中拖放到要求的頁面中),否則添加的表格對象只是停留在頁框上方,該表格實際是包含在表單中而非添加到頁框的頁面中。國家二級VF機試(操作題)模擬試卷第7套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考生文件夾下,打開一個公司銷售數(shù)據(jù)庫selldb,完成如下操作:(1)為各部門分年度季度銷售金額和利潤表s_t創(chuàng)建一個主索引和普通索引(升序),主索引的索引名為no,索引表達式為“部門號+年度”;普通索引的索引名和索引表達式均為“部門號”。(2)在ST表中增加一個名為“備注”的字段、字段數(shù)據(jù)類型為“字符”、寬度為30。(3)使用SQL的ALTERTABLE語句將s_t表的“年度”字段的默認值修改為“2004.”,并將該SQL語句存儲到命令文件one.prg中。(4)通過“部門號”字段建立s_t表和dept表間的永久聯(lián)系,并為該聯(lián)系設置參照完整性約束:更新規(guī)則為“級聯(lián)”;刪除規(guī)則為“限制”;插入規(guī)則為“忽略”。標準答案:(1)①在命令窗口執(zhí)行命令:MODIFYDATABASEselldb,打開selldb數(shù)據(jù)庫設計器。②右擊數(shù)據(jù)庫設計器中的s_t表,選擇【修改】快捷菜單命令,打外s_t表設計器,選中“索引”選項卡,在“索引名”下方的文本框中輸入“no”,在“索引”選項卡中將“類型”選擇為“主索引”,在表達式下方的文本框中輸入“部門號-+年度”,建立主索引。如圖4-18所示。③接著在“字段”選項卡中選中“部門號”,然后在“索引”列中選擇“升序”,建立“部門號”字段的普通索引,單擊“確定”按鈕保存表結(jié)構(gòu)修改。(2)繼續(xù)打開s_t表設計器,在表設計器“字段”選項卡的“字段名”列的最后一個空白文本框中輸入字段名“備注”,在“類型”下拉框中選擇“字符型”,在“寬度”文本框中輸入“30”,保存表結(jié)構(gòu)修改。(3)①在命令窗口執(zhí)行命令:MODIFYCOMMANDone,打開程序文件編輯器。②在編輯器中輸入SQL查詢代碼:ALTERTABLEs_tALTER年度C(4)DEFAuLT"2004"。③在命令窗口執(zhí)行命令:DOne.prg,執(zhí)行程序文件。(4)①在數(shù)據(jù)庫設計器中拖動DEPT表“索引”下方的主索引“部門號”到s_t表中“索引”下方的普通索引“部門號”是,為兩個表建立聯(lián)系。②選中兩個表之間的關(guān)聯(lián)線(被選中的連線會變粗),首先執(zhí)行【數(shù)據(jù)庫】→【清理數(shù)據(jù)庫】菜單命令,清空數(shù)據(jù)表中帶有刪除標記的記錄,然后執(zhí)行【數(shù)據(jù)庫】→【編輯參照完整性】菜單命令。③在打開的“參照完整性”對話框的表格中,選擇“更新”下的單元格內(nèi)容為“級聯(lián)”;“刪除”下的單元格內(nèi)容為“限制”;“插入”下的單元格內(nèi)容為“忽略”。單擊“確定”按鈕保存參照完整性的修改。如圖4-19所示。知識點解析:本題考查表索引的建立、表結(jié)構(gòu)的修改、SQL定義語句及參照完整性的建立。根據(jù)多個字段建立索引表達式時,需要在表設計器“索引”選項卡的“表達式”中進行設置,該索引表達式可以直接輸入,也可以打開“表達式生成器”建立。參照完整性是針對兩個表進行設置的,因此建立參照完整性前要先建立兩個表的關(guān)聯(lián),且有一個表中必須建立關(guān)聯(lián)字段的主索引(或候選索引),另一個表要建立普通索引,建立兩個表聯(lián)系后要先清理數(shù)據(jù)庫,然后再設置參照完整性。表結(jié)構(gòu)的修改可在相應的表設計器中進行操作即可;SQL定義語句也只需要熟記命令格式,設置表默認值語句的基本格式:ALTERTABLE<表名>ALTER<字段名><類型><(寬度)>DEFAuLT<默認值>。二、簡單應用題(本題共1題,每題1.0分,共1分。)2、(1)編寫程序three.prg完成下列操作:根據(jù)“外匯匯率”表中的數(shù)據(jù)產(chǎn)生rate表中的數(shù)據(jù)。要求:將所有“外匯匯率”表中的數(shù)據(jù)插入rate表中并且順序不變,由于“外匯匯率”中的“幣種1”和“幣種2”存放的是外幣名稱,而rate表中的“幣種1代碼”和“幣種2代碼”應該存放外幣代碼,所以插入時要做相應的改動,“外幣名稱”與“外幣代碼”的對應關(guān)系存儲在“外匯代碼”表中。注意:程序必須執(zhí)行一次,保證rate表中有正確的結(jié)果。(2)使用查詢設計器建立一個查詢文件four.qpr。查詢要求:從外匯賬戶中查詢“日元”和“歐元”的記錄。查詢結(jié)果包括了外幣名稱、鈔匯標志、金額,結(jié)果按“外幣名稱”升序排序,在“外幣名稱”相同的情況下按“金額”降序排序,并將查詢結(jié)果存儲于表five.dbf中。標準答案:(1)步驟1:命令窗口執(zhí)行:MODIFYCOMMANDthree,打開程序文件編輯器,輸入如下程序代碼(以下程序足通過查詢設計器牛成):1SELECT外代碼.外幣代和AS幣種1代碼;2外匯代碼a.外幣代碼AS幣種2代碼,外匯匯率.買入價,外匯匯率.賣出價;3FROM外匯!外匯代碼INNERJOIN外匯!外匯匯率;4INNERJOIN外匯!外匯代碼外匯代碼a;ON外匯匯率.幣種2=外匯代碼a.外幣名稱;6ON外匯代碼.外幣名楊=外匯匯率.幣種;7INTOARRAYarrl8INSERTINTORATE.DBFFROMARRAYarrl步驟2:命令窗口執(zhí)行:DOthree.prq,執(zhí)行程廳文件。(2)步驟2:命令窗口執(zhí)行:CREATEQUERYfour,打開查詢設計器,在“添加表或視圖”對話框中,分別雙擊“外匯代碼”表和“外匯賬戶”表,添加到查詢設計器中。步驟3:添加后,彈出“聯(lián)接條什”對話框,自動查找兩個表中相匹配的字段進行聯(lián)接,單擊“確定”設置聯(lián)系。步驟4:依次雙擊“外匯代碼”表中的“外幣名稱”和“外匯賬戶”表中的“鈔匯標志”、“金額”字段,添加到“字段”選項卡的“選定寧段”列表中。步驟5:在“篩選”選項卡的“字段名”下拉列表中選擇“外匯代碼.外幣名稱”字段,在“條件”下拉框中選擇“=”,在“實例”框中輸入“日元”,在“邏輯”下拉框中選擇“OR”;接著在第二行接著輸入查詢條件,在“’字段名”下拉列表中選擇“外匯代碼.外幣名稱”字段,在“條件”下拉框中選擇“=”,在“實例”框中輸入“歐元”。步驟6:在“排序依據(jù)”選項卡內(nèi)雙擊“選定字段”列表框中的“外匯代碼.外幣名稱”字段,將字段添加到“排序條什”列表框中,在“排序選項”中選擇“升序”單選項;以同樣的力‘法冉設置“外匯賬戶.金額”字段的降序。步驟7:執(zhí)行【查詢】→【查詢?nèi)ハ颉坎藛蚊?,在彈出的“查詢?nèi)ハ颉睂υ捒蛑袉螕簟氨怼眻D標按鈕,接著在“表名”中輸入文件名“five”,單擊“確定”按鈕。步驟8:最后單擊“常用”工具欄中的“運行”按鈕查看結(jié)果,將查詢文件保存到考生文件夾下。知識點解析:(1)本題考查的是SQL超鏈接查詢。設計SQL代碼的關(guān)鍵是建立“外匯代碼”表中“外幣代碼”與“外匯匯率”表中“幣種1”和“幣種2”的聯(lián)系。由于輸出結(jié)果的“幣種1”和“幣種2”需要用相應的“外幣代碼”表示,“外匯代碼”表中的“外幣代碼”只能利用一次,即替換“幣種1”或“幣種2”中的幣種名稱,這樣沒有被替換的幣種仍然是中文幣種名稱,因此需要將“外匯代碼”表利用兩次,兩個表中的“外幣代碼”分別替換“外匯匯率”表中“幣種1”和“幣種2”的中文幣種名,被兩次引用的表名要在原表名后再加“a”進行區(qū)分。三個表的聯(lián)接條件分別是“外匯代碼.外幣名稱=外匯匯率.幣種1”和“外匯匯率.幣種2=外匯代碼a.外幣名稱”。查詢輸出的字段名可以通過AS短語重新指定名稱。另外,查詢結(jié)果要求保存到數(shù)據(jù)庫表,因此要將結(jié)果保存到數(shù)組中,然后再通過數(shù)組將記錄插入到表中。(2)本題考查的是在查詢設計器中新建查詢的操作。操作過程中要注意確認查詢輸出的字段來源于哪個表;查詢條件在“篩選”選項卡中設置;排序在“排序依據(jù)”選項卡中設置;查詢?nèi)ハ蚩赏ㄟ^執(zhí)行【查詢】→【查詢?nèi)ハ颉坎藛蚊?,在“查詢?nèi)ハ颉睂υ捒蛑羞M行操作。三、綜合應用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下有一個名為myform的表單,表單中包括一個列表框和兩個命令按鈕。請在該表單中完成如下操作:①在表單設計器環(huán)境下設置列表框的數(shù)據(jù)源(ROWSourlce)和數(shù)據(jù)源類型(RowSourceType)兩個屬性。設置RowSourceType屬性為3,在RowSource屬性中使用SQL的SELECT…INTOCuRSOR…語句根據(jù)“國家”表中“國家名稱”字段的內(nèi)容在列表框中顯示“國家名稱”(注意:不要使用命令指定這兩個屬性)。②為“生成表”命令按鈕編寫程序。程序的功能是根據(jù)表單運行時列表框中選定的國家名稱,將“獲獎牌情況”表中相應國家的所有記錄存入以該國家名稱命名的自由表中,自由表中包含“運動員名稱”、“項目名稱”和“名次”三個字段,并按照“名次”升序排列。提示:假設從列表框中選擇的圍家名稱存放在變量gm中,那么在SQLSELECT語句中使用短語intotable&.gm就可以將選擇的記錄存入以該國家名命名的自由表中。③運行表單,分別生成存有“中國”、“日本”、“美國”、“俄羅斯”4個國家獲獎情況的4個自由表。標準答案:步驟1:命令窗口執(zhí)行:MODIFYFORMmvform,打開表單設計器修改表單。步驟2:選中表單中的列表框(Listl),存屬性面板中修改其RowSourceType屬性值為:3-SQL語句;同時指定RowSource屬性值為:SELECT國家名稱FROM國家INTOCURSORmylist步驟3:雙出“生成表”命令按鈕,編寫Click事件代碼。代碼如下:*****“生成表”按鈕的Click事什代碼*****1gm="SS"2gm=THISFORM.LIsTl.VALuE3SELECT運動員名稱,項目名稱,名次;4FROM獲獎牌情況,國家WHERE國家.國家名稱=gmj5AND獲獎牌情況.國家代碼=國家.國家代碼;6ORDERBY名次INTODBF&gm步驟4:單擊“常用”工具欄中的“運行”按鈕禽看結(jié)果,分別選中列表框中的“中國”、“日本”、“美國”和“俄羅斯”4個條目生成對應的表,將表單文件保存到考生文件夾。知識點解析:本大題考查了表單及控件的常用屬性和方法的設置;SQL簡單聯(lián)接查詢。本題關(guān)鍵是SQL查詢語句中怎樣將列表框中被選中的“國家名稱”內(nèi)容命名為表名。解決此問題的方法就是先定義一個變量等于列表框中的被選定的條目值,然后使用宏替換函數(shù)(&)將變量值替換出來。本題進查詢的兩個表是“國家”表和“獲獎牌情況”表通過“國家代碼”聯(lián)接,利用ORDERBY對查詢結(jié)果排序,利用INTODBF(或INTOTABLE)將結(jié)果輸出到數(shù)據(jù)表中。國家二級VF機試(操作題)模擬試卷第8套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考生文件夾下,打開“賓館”數(shù)據(jù)庫,完成如下操作:(1)打開“客戶”表,給“性別”字段增加約束:性別只能為“男”或“女”,默認值為:”女”,表達式為:性別$“男女”。(2)為“入住"表創(chuàng)建一個主索引,主索引的索引名為fkkey,索引表達式為:客房號+客戶號。(3)根據(jù)各表的名稱、字段名的含義和存儲的內(nèi)容建立表之間的永久聯(lián)系,并根據(jù)要求建立相應的普通索引,索引名與建索引的字段名相同,升序排序。(4)使用SQL的SELECT語句查詢“客戶”表中性別為“男”的“客戶號”、“身份證”、“姓名”和“工作單位”字段及相應的記錄值,并將結(jié)果存儲到名為taba的表(注意,該表不需要排序)。請將該語句存儲到名為one.prg的文件中。標準答案:【操作步驟】(1)①命令窗口執(zhí)行:MODIFYDATABASE賓館,打開數(shù)據(jù)庫設計器。②右擊數(shù)據(jù)庫設計器中的“客戶”表,選擇【修改】,打開“客戶”表設計器,選中“字段”選項卡中的“性別”字段,在“字段有效性”的“規(guī)則”文本框中輸入:性別$..男女”,在“默認值”文本框中輸入:”女”,保存表修改。(2)右擊數(shù)據(jù)庫設計器中的“入住”表,選擇【修改】,打開“入住”表設計器,選中“索引”選項卡,在“索引名”下方的文本框中輸入“fkkey”,“索引”選項卡中將“類型”選擇“主索引”,在表達式下方的文本框中輸入“客房號+客戶號”,建立主索引。(3)①選中“入住”表單擊“修改”按鈕,在表設計器的“字段”選項卡中選中“客戶號”,在“索引”列的下拉框選擇“升序”為表建立普通索引,選中“客房號”字段名,在“索引”列的下拉框選擇“升序”排序方式,單擊“確定”按鈕保存表結(jié)構(gòu)修改。②參照“入住”表的操作,為“客房”表建立“類型號”字段的普通索引。③數(shù)據(jù)庫設計器中,拖動“客戶”表“索引”下方的主索引“客戶號”到“入住”表中“索引”下方的普通索引“客戶號”上,為兩個表建立聯(lián)系。④以同樣的方法建立其他三個表之間的聯(lián)系,拖動過程中是由主索引字段向普通索引字段進行拖動,且一定要拖到相應的普通索引字段上才可以松開鼠標。(4)①命令窗口執(zhí)行:MODIFYCOMMANDone,打開程序文件編輯器編寫視圖定義代碼如下:SELECT客戶號,身份證,姓名,工作單位FROM客戶;WHERE性別=“男”INTOTABLEtaba②命令窗口執(zhí)行:DOone,執(zhí)行文件。知識點解析:暫無解析二、簡單應用題(本題共1題,每題1.0分,共1分。)2、(1)使用查詢設計器設計完成:查詢“吳”姓讀者(客戶名第一個字為“吳”)訂購圖書情況,查詢結(jié)果包括客戶名、訂單號、圖書名、單價、數(shù)量和簽訂日期字段的值,要求按客戶名升序排序,并運行該查詢將查詢結(jié)果存儲在表文件appone,查詢文件也保存為appone。(2)使用SQL語句查詢每個讀者訂購圖書的數(shù)量和金額(數(shù)量×單價),查詢結(jié)果包括客戶名、訂購總冊數(shù)和金額,查詢按金額降序排序,查詢結(jié)果存儲在apptwo.dbf表文件,最后將SQL語句保存在apptwo.prg命令文件。標準答案:(1)【操作步驟】步驟1:在命令窗口執(zhí)行命令:CREATEQUERY,新建一個查詢。步驟2:在彈出的“添加表或視圖”對話框里面,單擊“其他”按鈕,彈出“打開”對話框,在考生目錄找到goods.DBF文件,單擊“打開”按鈕,完成goods表的添加。步驟3:重復步驟2,繼續(xù)添加表orderitem和order,并通過圖書號以及訂單號來設置三個表之間的聯(lián)系,添加完成之后如圖4.26所示。步驟4:在查詢設計器里面“字段”選項卡中依次選擇Order.客戶名、Order.訂單號、Goods.圖書名、Goods.單價、Orderitem.數(shù)量和Order.簽訂日期,然后單擊“添加”按鈕,把字段添加到查詢中,添加完成后如圖4.27所示。步驟5:在“篩選”選項卡中選擇“Order.客戶名”,條件選擇“l(fā)ike”,實例輸入“吳%”,如圖4.28所示。步驟6:在“排序依據(jù)”選項卡中添加“Order.客戶名”,如圖4.29所示。步驟7:在查詢設計器工具欄上選擇“查詢?nèi)ハ颉卑粹o,彈出“查詢?nèi)ハ颉睂υ捒?。輸出去向選擇“表”,表名輸入“appone”,如圖4—30所示。步驟8:保存查詢,文件名輸入“appone”。(2)【操作步驟】步驟1:創(chuàng)建數(shù)據(jù)庫可以使用菜單完成,選擇“文件”菜單下面的“新建”子菜單,彈出“新建對話框”對話框,在對話框里面選擇“程序”單選按鈕。步驟2:在“新建”對話框里面單擊“新建文件”按鈕,打開程序編輯界面。步驟3:在程序編輯界面輸入SOL語句:select客戶名,sum(數(shù)量)訂購總冊數(shù),sum(單價*數(shù)量)余額;fromgoods,orderitem,order;whereqoods.圖書號=0rderitem.圖書號andorderi七em.訂單號=order.訂單號;groupby客戶名。rderby金額desc;intodbfapptwo9步驟4:單擊菜單工具欄“保存”按鈕彈出“另存為”對話框,輸入文件名apptwo,單擊“保存”按鈕保存文件。步驟5:運行程序。知識點解析:暫無解析三、綜合應用題(本題共1題,每題1.0分,共1分。)3、使用報表設計器建立一個報表,具體要求如下:①報表的內(nèi)容(細節(jié)帶區(qū))是orderlist表的訂單號、訂購日期和總金額。②增加數(shù)據(jù)分組,分組表達式是“orderlist.客戶號”,組標頭帶區(qū)的內(nèi)容是“客戶號”,組注腳帶區(qū)的內(nèi)容是該組訂單的“總金額”合計。③增加標題帶區(qū),標題是“訂單分組匯總表(按客戶)”,要求是三號字、黑體,括號是全角符號。④增加總結(jié)帶區(qū),該帶區(qū)的內(nèi)容是所有訂單的總金額合計。最后將建立的報表文件保存為report1.frx文件。提示:在考試的過程中可以使用“顯示一預覽”菜單查看報表的效果。標準答案:【操作步驟】步驟1:命令窗口執(zhí)行:CREATEREPORTREPORT1,打開報表設計器。步驟2:右擊報表選擇【數(shù)據(jù)環(huán)境】,在報表數(shù)據(jù)環(huán)境中單擊右鍵選擇【添加】,在“添加表或視圖”對話框中雙擊orderlist表,將表添加到報表數(shù)據(jù)環(huán)境中。步驟3:右擊報表數(shù)據(jù)環(huán)境中的orderlist表,選擇【屬性】,在報表屬性面板中修改“Order”屬性值為“客戶號”,該操作是為了讓記錄能按“客戶號”索引排序的數(shù)據(jù)。步驟4:從報表數(shù)據(jù)環(huán)境的orderlist表中,依次拖動“訂單號”、“訂購日期”和“總金額”字段到報表設計器的細節(jié)帶區(qū),再通過“報表控

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論