國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷12(共27題)_第1頁(yè)
國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷12(共27題)_第2頁(yè)
國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷12(共27題)_第3頁(yè)
國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷12(共27題)_第4頁(yè)
國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷12(共27題)_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷12(共9套)(共27題)國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷第1套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)打開“訂單管理”數(shù)據(jù)庫(kù),然后從中刪除customer。表。(2)為employee表建立一個(gè)普通索引,索引名為xb,索引表達(dá)式為“性別”,升序索引。(3)為employee表建立一個(gè)普通索引,索引名為xyz,索引表達(dá)式為“str(組別,1)+職務(wù)”,升序索引。(4)為employee表建立主索引,為orders建立普通索引,索引名和索引表達(dá)式均為“職員號(hào)”。通過(guò)“職員號(hào)”在employee表和orders之間建立一個(gè)一對(duì)多的永久聯(lián)系。標(biāo)準(zhǔn)答案:【操作步驟】(1)在命令窗口執(zhí)行命令:MODIFYDATABASE訂單管理,打開數(shù)據(jù)庫(kù)設(shè)計(jì)器。右擊數(shù)據(jù)庫(kù)設(shè)計(jì)器中的“customer”表,選擇【刪除】快捷菜單命令,在彈出的Visual.FoxPro對(duì)話框中單擊“刪除”按鈕,將“customer”表永久性刪除。(2)接上小題操作,在數(shù)據(jù)庫(kù)設(shè)計(jì)器中右擊數(shù)據(jù)庫(kù)設(shè)計(jì)器中的employee表,選擇【修改】快捷菜單命令,打開employee表設(shè)計(jì)器,選中“索引”選項(xiàng)卡,在“索引名”下方的文本框中輸入“xb”,在“索引”選項(xiàng)卡中將“類型”選擇為“普通索引”,在“表達(dá)式”下方的文本框中輸入“性別”。(3)接上小題操作,繼續(xù)在表設(shè)計(jì)器的“索引”選項(xiàng)卡的第二行中,輸入“索引名”為“xyz”,在“索引”選項(xiàng)卡中將“類型”選擇為“普通索引”,在“表達(dá)式”下方的文本框中輸入:STR(組別,1)+職務(wù)。(4)①接上小題操作,繼續(xù)在表設(shè)計(jì)器的“索引”選項(xiàng)卡的第三行中,輸入“索引名”為“職員號(hào)”,在“索引”選項(xiàng)卡中將“類型”選擇為“主索引”,在“表達(dá)式”下方的文本框中輸入“職員號(hào)”,單擊“確定”按鈕保存表結(jié)構(gòu)修改。②參照以上操作,為orders表建立一個(gè)“職員號(hào)”字段的普通索引。在數(shù)據(jù)庫(kù)設(shè)計(jì)器中拖動(dòng)employee表“索引”下方的主索引“職員號(hào)”到orders表中“索引”下方的普通索引“職員號(hào)”上,為兩個(gè)表建立聯(lián)系。知識(shí)點(diǎn)解析:暫無(wú)解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)在考生文件夾下已有表單文件formone.scx,如圖2—35所示,其中包含兩個(gè)標(biāo)簽、一個(gè)組合框和一個(gè)文本框。請(qǐng)按下面要求完成相應(yīng)的操作,使得當(dāng)表單運(yùn)行時(shí),用戶能夠從組合框選擇職員,而該職員所簽訂單的平均金額能自動(dòng)顯示在文本框里。①將orders表和employee表依次添加到該表單的數(shù)據(jù)環(huán)境中(不要修改兩個(gè)表對(duì)應(yīng)對(duì)象的各屬性值)。②將組合框設(shè)置成下拉列表框;將employee表中的“姓名”字段作為下拉列表框條目的數(shù)據(jù)源(RowSourlceType屬性值應(yīng)設(shè)置為:6-字段)。③將文本框Text1設(shè)置為只讀。④修改組合框的InteractiveChange事件代碼,使得當(dāng)用戶從組合框選擇職員時(shí),能夠?qū)⒃撀殕T所簽訂單的平均金額自動(dòng)顯示在文本框中。(2)利用查詢?cè)O(shè)計(jì)器創(chuàng)建查詢,從employee和orders表中查詢“組別”為“1”的組各職員所簽所有訂單的信息。查詢結(jié)果依次包含“訂單號(hào)”、“金額”、“簽訂者”3項(xiàng)內(nèi)容,其中“簽訂者”為簽訂訂單的職員姓名。各記錄按“金額”降序排序;查詢?nèi)ハ驗(yàn)楸韙ableone。最后將查詢保存在queryone.qpr文件中,并運(yùn)行該查詢。標(biāo)準(zhǔn)答案:(1)【操作步驟】步驟1:在命令窗口執(zhí)行命令:MODIFYFORMformone,打開表單設(shè)計(jì)器修改表單。步驟2:右擊表單選擇【數(shù)據(jù)環(huán)境】快捷菜單命令,繼續(xù)在表單數(shù)據(jù)環(huán)境中單擊右鍵選擇【添加】快捷菜單命令,在“添加表或視圖”對(duì)話框中雙擊orders表和employee表,將表添加到數(shù)據(jù)環(huán)境中。步驟3:在“屬性”面板的下拉框中選擇表單對(duì)象,在“全部”選項(xiàng)卡中修改對(duì)象屬性值,見表3—37。步驟4:雙擊表單中的組合框(Combo1),修改事件代碼,組合框的原InteractiveChange事件代碼如下:*下面代碼的功能是讀取所選職員的職員號(hào),然后計(jì)算該職員所簽訂單的平均金額,并顯示在丈本框內(nèi)。*修改所有***FOUND***下面的一條語(yǔ)句。*不能修改其他語(yǔ)句,不能增加語(yǔ)句,也不能刪除語(yǔ)句。1dimea(1,1)2a(1,1)=03m1=employee.職員號(hào)4selectavg(金額)fromrderswhere職員號(hào)=m1intoarrava5m2=a(1,1)6***found***7text1.value=m2修改程序中的錯(cuò)誤行,修改后的程序如下:1dimea(1,1)2a(1,1)=03m1=employee.職員號(hào)4selectavq(金額)fromorderswhere職員號(hào)=m1intoarrava5m2=a(1,1)6***FOUND***7thisform.text1.value=m2步驟5:?jiǎn)螕簟俺S谩保汗ぞ邫谥械摹斑\(yùn)行”按鈕查行結(jié)果,將表單文件保存到考生文件件下。(2)【操作步驟】步驟1:在命令窗口執(zhí)行命令:OPENDATABASE訂單管理,打開數(shù)據(jù)庫(kù)環(huán)境。步驟2:在命令窗口執(zhí)行命令:CREATEQUERYquervone,打開查詢?cè)O(shè)計(jì)器,在“添加表或視圖”對(duì)話框中,分別雙擊employee表和orders表,將表添加到查詢?cè)O(shè)計(jì)器中。步驟3:添加兩個(gè)表后,系統(tǒng)彈出“聯(lián)接條件”對(duì)話框,自動(dòng)查找兩個(gè)表中相匹配的字段進(jìn)行聯(lián)接,單擊“確定”按鈕設(shè)置兩個(gè)表的聯(lián)系。步驟4:依次雙擊orders表中的“訂單號(hào)”和“金額”字段,添加到“字段”選項(xiàng)卡的“選定字段”列表中;然后在“字段”選項(xiàng)卡左下方的“函數(shù)和表達(dá)式”文本框中輸入:Employee.姓名AS簽訂者,再單擊“添加”按鈕將表達(dá)式添加到“字段”選項(xiàng)卡的“選定字段”列表中。步驟5:在“篩選”選項(xiàng)卡的“字段名”下拉列表中選擇“Employee.組別”字段,在“條件”下拉框中選擇“=”,在“實(shí)例”框中輸入“1”。步驟6:在“排序依據(jù)”選項(xiàng)卡內(nèi)雙出“選定字段”列表框中的“Orders.金額”字段,將字段添加到“排序條件”列表框中,在“排序選項(xiàng)”中選擇“降序”單選項(xiàng)。步驟7:執(zhí)行【查詢】→【查詢?nèi)ハ颉坎藛蚊?,在彈出的“查詢?nèi)ハ颉睂?duì)話框中單擊“表”圖標(biāo)按鈕,接著在“表名”中輸入文件名tableone,單擊“確定”按鈕。步驟8:最后單擊“常用”工具欄中的“運(yùn)行”按鈕查看結(jié)果,將查詢文件保存到考生文件夾下。知識(shí)點(diǎn)解析:暫無(wú)解析三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下創(chuàng)建一個(gè)下拉式菜單mymenu.mnx,并生成菜單程序mymenu.mpr。運(yùn)行該菜單程序時(shí)會(huì)在當(dāng)前VisualFoxPro系統(tǒng)菜單的“幫助”子菜單之前插入一個(gè)“考試”子菜單,如圖2—36所示。菜單命令“統(tǒng)計(jì)”和“返回”的功能都通過(guò)執(zhí)行過(guò)程完成。菜單命令“統(tǒng)計(jì)”的功能是以組為單位求訂單金額的和。統(tǒng)計(jì)結(jié)果包含“組別”、“負(fù)責(zé)人”和“合計(jì)”3項(xiàng)內(nèi)容,其中“負(fù)責(zé)人”為該組組長(zhǎng)(由employee中的“職務(wù)”一指定)的姓名,“合計(jì)”為陔組所有職員所簽訂單的金額總和。統(tǒng)計(jì)結(jié)果應(yīng)按“合計(jì)”降序排序,并存放在tabletwo表中。菜單命令“返回”的功能是返回標(biāo)準(zhǔn)的系統(tǒng)菜單。菜單程序生成后,運(yùn)行菜單程序并依次執(zhí)行“統(tǒng)計(jì)”和“返回”菜單命令。標(biāo)準(zhǔn)答案:【操作步驟】步驟1:在命令窗口執(zhí)行命令:CREATEMENUmymenu,在彈出的“新建菜單”對(duì)話框中單擊“菜單”圖標(biāo)按鈕,打開菜單設(shè)計(jì)器。步驟2:在菜單設(shè)計(jì)器“菜單名稱”列的文本框中輸入“考試”,在“結(jié)果”下拉框中選擇“菜單”,單擊“創(chuàng)建”按鈕進(jìn)入下級(jí)菜單設(shè)計(jì),在“菜單名稱”列的第1、2行文本框中依次輸入子菜單名“統(tǒng)計(jì)”、“返回”,將“統(tǒng)計(jì)”和“返回”子菜單的“結(jié)果”都設(shè)置為“過(guò)程”,單擊“統(tǒng)計(jì)”子菜單行的“創(chuàng)建”命令按鈕,打開過(guò)程編輯框編寫過(guò)程代碼。步驟3:兩個(gè)子菜單的命令代碼如下:*****“統(tǒng)計(jì)”子菜單的過(guò)程代碼*****1SEIJECTEmployee.組別,SUM(Orders.金額)AS合計(jì);2FROM訂單管理!employeeINNERJOIN訂單管理!0rders;3ONEmoloyee.職員號(hào)=orders.職員號(hào);4GROUPBYEmployee.組別;5TNTOCURSORRES6SELECTRes.組別,Employee.姓名AS負(fù)責(zé)人,Res.合計(jì);7FROMRes,Employee;8WHERERes.組別=Employee.組別;9ANDEmployee.職務(wù)="組長(zhǎng)";10ORDERBYRes.合計(jì)DESC;11TNTOTABLEtabletwo.dbf****“返回”子菜單的命令代碼*****SETSYSMENUNOSAVESETSYSMENUTODEFAULT步驟4:執(zhí)行【顯示】→【常規(guī)選項(xiàng)】菜單命令,在“位置”區(qū)域選中“在…之前”單選項(xiàng),然后在該選項(xiàng)后面出現(xiàn)的下拉框中選擇“幫助(H)”,則新建立的子菜單會(huì)在當(dāng)前VisualFoxPro系統(tǒng)菜單的“幫助”菜單命令前顯示。步驟5:執(zhí)行【菜單】→【生成】菜單命令,在彈出的VisualFoxPro對(duì)話框中單擊“是”按鈕,接著系統(tǒng)會(huì)彈出“生成菜單”對(duì)話框,單擊“生成”按鈕生成一個(gè)呵執(zhí)行的菜單文件。步驟6:在命令窗口執(zhí)行命令:DOmymenu.mpr,運(yùn)行菜單,并執(zhí)行“統(tǒng)計(jì)”菜單命令。知識(shí)點(diǎn)解析:暫無(wú)解析國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷第2套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)打開數(shù)據(jù)庫(kù)SCOREMANAGER,該數(shù)據(jù)庫(kù)中含三個(gè)有聯(lián)系的表STUDENT、SCORE1和COURSE,根據(jù)已經(jīng)建立好的索引,建立表之間的聯(lián)系。(2)為COURSE表增加字段:開課學(xué)期(N,2,0)。(3)為SCOR_El表“成績(jī)”字段設(shè)置字段有效。降規(guī)則:成績(jī)>=0,出錯(cuò)提示信息足:“成績(jī)必須大r或等于零”。(4)將SCORE1表“成績(jī)”字段的默認(rèn)值設(shè)置為空值(NULL)。標(biāo)準(zhǔn)答案:(1)①在命令窗口執(zhí)行命令:MODIFYDATABASEscore_manaqer,打開salary數(shù)據(jù)庫(kù)設(shè)計(jì)器。②在數(shù)據(jù)庫(kù)設(shè)計(jì)器中,拖動(dòng)student表“索引”下方的主索引“學(xué)號(hào)”到score1表中“索引”下方的普通索引“學(xué)號(hào)”上,為兩個(gè)表建立聯(lián)系;拖動(dòng)course表“索引”下方的主索引“課程號(hào)”到score1表中“索引”下方的普通索引“課程號(hào)”上,為兩個(gè)表建立聯(lián)系;(2)右擊數(shù)據(jù)庫(kù)設(shè)計(jì)器中的“course”表,選擇【修改】快捷菜單命令,打開course表設(shè)計(jì)器,在表設(shè)計(jì)器“字段”選項(xiàng)卡的“字段名”列的最后一個(gè)空白文本框中輸入字段名“開課學(xué)期”,在“類型”下拉框中選擇“數(shù)值型”,在“寬度”文本框中輸入“2”,保存表結(jié)構(gòu)修改。(3)在數(shù)據(jù)庫(kù)設(shè)計(jì)器中,右擊score1表,選擇【修改】快捷菜單命令,打開score1表設(shè)計(jì)器,在“字段”選項(xiàng)卡中選中“成績(jī)”,在“字段有效性”的“規(guī)則”文本框中輸入:成績(jī)>=0,在“信息”文本框中輸入:”成績(jī)必須大于或等于零”。(4)接上小題操作,單擊“成績(jī)”行中“NULL”列的無(wú)符號(hào)按鈕,使其按鈕被選中(被選中的按鈕上會(huì)出現(xiàn)一個(gè)“√”符號(hào)),在“默認(rèn)值”文本框中輸入:.NULL.。保存表結(jié)構(gòu)修改。知識(shí)點(diǎn)解析:本大題考查了表結(jié)構(gòu)的修改;有效性規(guī)則的建立;永久聯(lián)系的建立。對(duì)表中字段建立有效性規(guī)則和設(shè)置默認(rèn)值是在表設(shè)計(jì)器中操作的,在操作時(shí)要注意先選中需要建立有效性規(guī)則的字段。二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)student是一個(gè)“學(xué)生”表,其中包含學(xué)號(hào)(C8)、姓名(C8)、性別(C2)、政治面目(C4)、班級(jí)(C5)等字段??忌募A下的modil.prg程序文件的功能是顯示輸出所有政治面目為“群眾”的“男”生的姓名和班級(jí),每行輸出一個(gè)學(xué)生的信息;程序中有三處錯(cuò)誤,請(qǐng)加以改正。說(shuō)明:程序中******ERRORFOUND******的下一行即為錯(cuò)誤所在行。請(qǐng)用改正后的程序行覆蓋錯(cuò)誤所在行,不要插入或刪除任何程序行。(2)建立命令文件sprog.prg,該命令文件包含如下兩條語(yǔ)句:.第一條語(yǔ)句使用SQLUPDATE命令計(jì)算和更新student表的年齡字段值(計(jì)算年齡的表達(dá)式是year(dat())-year(出生日期))。.第二條語(yǔ)句使用SQLSELECT命令查詢各種“政治面目”的學(xué)生人數(shù)和平均年齡,并將結(jié)果存儲(chǔ)于表sqlresults(字段名是政治面目、人數(shù)和平均年齡)。說(shuō)明:以上命令文件必須執(zhí)行,并產(chǎn)生所要求的結(jié)果。標(biāo)準(zhǔn)答案:(1)步驟1:在命令窗口執(zhí)行命令:MODIFYCOMMANDmodil,打開程序文件,文件中的命令代碼如下:1SETTALKOFF2USEstudent3LOCATEFOR政治面目="群眾"4"************error************DOWHILE.NOT.FOUND()5IF性別="男"6CONTINUE7************error***********BREAK8ENDIF97姓名,班級(jí)10************error************SKIP11ENDDO12USE13SETTALKON>修改程序中的錯(cuò)誤行,修改后的程序如下:1SETTALKOFF2USEstudent&&打開student表3LOCATEFOR政治面目="群眾"&&查找當(dāng)前記錄的“政治面目”為“群眾”4DOWHILEFOUND()&&循環(huán)條件為找到"政治而目"為"群眾"的記錄時(shí)進(jìn)入循環(huán)5IF性別="男"&&如果性別為“女”,繼續(xù)執(zhí)行下面的語(yǔ)句,否則執(zhí)行ENDIF語(yǔ)句之后的語(yǔ)句6CONTINUE&&返回到循環(huán)體起始位置繼續(xù)重新判斷下一條記錄“政治面目”值是否為“群眾”7LOOP&&返舊到循環(huán)體起始位置,即DOWHILE處重新判斷,不再執(zhí)行后面的語(yǔ)句8ENDIF&&當(dāng)IF處條件不成立時(shí),直接執(zhí)行該語(yǔ)句后面的命令9?姓名,班級(jí)&&當(dāng)前面的IF條件語(yǔ)句不成立時(shí),執(zhí)行該語(yǔ)句,顯示當(dāng)前記錄的“姓名”和“班級(jí)”值10CONTINUE&&返回到循環(huán)體起始位置繼續(xù)重新判斷下一條記錄"政治面目"值是行為"群眾"11ENDDO&&當(dāng)DOWHILE處條件不成立時(shí),直接退出循環(huán)體,執(zhí)行該語(yǔ)句后面的命令12USE&&關(guān)閉當(dāng)前打開的表13SETTALKON步驟2:保存文件修改,在命令窗口執(zhí)行命令:DOmodil.prg,執(zhí)行程序文件。(2)步驟1:在命令窗口執(zhí)行命令:MODIFYCOMMANDsprog,打開程序文件編輯器。步驟2:在程序文件編輯器中輸入如下代碼(相關(guān)SQL查詢語(yǔ)句是通過(guò)查詢?cè)O(shè)計(jì)器生成):1UPDATEstudentSET年齡=YEAR(DATE())-YEAR(出生日期)2SELECTSTUDENT.政治面目,COUNT(STUDENT.學(xué)號(hào))AS人數(shù),AVG(STUDENT.年齡)AS平均年齡;FROMstudent;4GROUPBYstudent.政治面目;5INTOTABLEsqlresults.dbf步驟3:保存文件修改,在命令窗口執(zhí)行命令:DOsprog.prg,執(zhí)行程序文件。知識(shí)點(diǎn)解析:(1)本題主要考查的是利用VisualFoxPro命令查詢定位數(shù)據(jù)表中的記錄。此類型的題主要通過(guò)一個(gè)DOWHILE循環(huán)語(yǔ)句對(duì)表中的記錄逐條比較,對(duì)滿足條件的記錄進(jìn)行相關(guān)的操作。本題中第一處錯(cuò)誤是循環(huán)條件的錯(cuò)誤,進(jìn)入循環(huán)體的條件是邏輯值為真,第二處錯(cuò)誤中屬于命令短語(yǔ)錯(cuò)誤,visualFoxPro中沒(méi)有BREAK命令,第三處錯(cuò)誤是SKIP命令錯(cuò)誤,該命令雖然可以將當(dāng)前記錄指針指向下一條記錄,但不再執(zhí)行LOCATEFOR處的條件判斷,如果要包含判斷功能,則要使用CONTINUE短語(yǔ)。本題程段中各語(yǔ)句的功能可參考“操作步驟”中對(duì)各條語(yǔ)句的注釋說(shuō)明,這里不再細(xì)說(shuō)。(2)本題考查了SQL數(shù)據(jù)更新功能和分組計(jì)算查詢功能。本題數(shù)據(jù)更新語(yǔ)句可直接套用SQL更新語(yǔ)句的命令格式;對(duì)數(shù)據(jù)進(jìn)行分組計(jì)算查詢時(shí),用來(lái)計(jì)數(shù)的函數(shù)為COUNT(),用來(lái)求平均值的函數(shù)為AVG(),通過(guò)AS短語(yǔ)可以指定新的字段名,另外,對(duì)記錄進(jìn)行分組時(shí),分組字段要設(shè)置正確,根據(jù)題意,本題的分組字段應(yīng)為“學(xué)生”表中的“政治面目”字段。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下,打開名稱為CDB的商品銷售數(shù)據(jù)庫(kù),完成如下綜合應(yīng)用:創(chuàng)建一個(gè)標(biāo)題名為“顧客購(gòu)買商品查詢”、文件名為GK的表單,如圖2.12所示。表單要求如下:①在該表單中設(shè)計(jì)兩個(gè)標(biāo)簽、兩個(gè)文本框、一個(gè)表格控件和兩個(gè)命令按鈕。②表單中兩個(gè)標(biāo)簽的名稱分別為L(zhǎng)abel1和Label2,其標(biāo)題分別為“顧客號(hào)”和“應(yīng)付款”;兩個(gè)文本框的名稱分別為Textl和Text2,前者用于輸入查詢的顧客號(hào),后者用于顯示該顧客的應(yīng)付款;表格Gridl用于顯示顧客購(gòu)買商品的詳細(xì)記錄。③兩個(gè)命令按鈕的功能如下:“查詢”按鈕(Command1):在該按鈕的Click事件中編寫程序,采用SQL語(yǔ)句根據(jù)第1個(gè)文本框輸入的顧客號(hào)進(jìn)行查詢。在表格控件中顯示該顧客的顧客號(hào)和購(gòu)買的每件商品的商品號(hào)、商品名、單價(jià)、數(shù)量和金額,各記錄按商品號(hào)升序排序。該查詢結(jié)果應(yīng)同時(shí)存儲(chǔ)到表tjb.dbf中。另外需要統(tǒng)計(jì)該順客的應(yīng)付款,并將結(jié)果顯示于Text2文本框中。說(shuō)明:金額=單價(jià)*數(shù)量,應(yīng)付款=顧客購(gòu)買的商品金額合計(jì)?!巴顺觥卑粹o(Command2):關(guān)閉并釋放表單。注意:表格控件的RecordSour.ceType屬性設(shè)置為“4一SQL說(shuō)明”。表單設(shè)計(jì)完成后,運(yùn)行該表單,輸入顧客號(hào):010003,單擊“查詢”按鈕進(jìn)行查詢。標(biāo)準(zhǔn)答案:步驟1:在命令窗口執(zhí)行命令:CREATEFORMGK,打開表單設(shè)計(jì)器新建表單。步驟2:從“表單工具欄”中依次向表單添加兩個(gè)標(biāo)簽、兩個(gè)文本框、一個(gè)表格控件和兩個(gè)命令按鈕控件。在“屬性”面板的下拉框中選擇表單對(duì)象,在“全部”選項(xiàng)卡中修改對(duì)象屬性值。見表3.12。步驟3:雙擊命令按鈕,編寫各個(gè)命令按鈕的Click事件代碼。各按鈕代碼如下:*****“查詢”按鈕的click事件代碼*****1GKH=THISFORM.TEXT1.VALUE2THISFORM.GRID1.RECORDSOURCE="SELECTOrder.顧客號(hào),order.商品號(hào),Comm.商品名,Comm.單價(jià),Order.?dāng)?shù)量,;3Comm.單價(jià)*Order.?dāng)?shù)量as金額;4FROMcommINNERJOINorder;5ONComm.商品號(hào)=order.商品號(hào);6WHEREOrder.顧客號(hào)=ALLTRIM(THISFORRM.TEXBT1.VALUE);7ORDERBY2;8INTOTABLEtjb.dbf"9SELECTSUMN(金額)FEOMTJBINTOARRAYA10THISFORM.TEXT2.VALUE=A(1)*****“退出”按鈕的Click事件代碼*****THISFORM.RELEASE步驟4:?jiǎn)螕簟俺S谩惫ぞ邫谥械摹斑\(yùn)行”按鈕運(yùn)行表單,在文本框中輸入“010003”,單擊“查詢”命令按鈕,然后單擊“退出”命令按鈕結(jié)束。知識(shí)點(diǎn)解析:本題主要考查了表單及控件的常用屬性的設(shè)置;SQL的簡(jiǎn)單查詢和聯(lián)接查詢。對(duì)本題操作時(shí),首先根據(jù)題意新建表單,添加控件并修改其相關(guān)屬性。本題中的SQL程序設(shè)計(jì)部分考查的是SQL聯(lián)接查詢,屬于比較簡(jiǎn)單的查詢語(yǔ)句,注意正確引用文本框中的值即可;本題的“應(yīng)付款”可以通過(guò)數(shù)組保存,然后再賦給第二個(gè)文本框用來(lái)顯示。國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷第3套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考生文件夾下,打開招生數(shù)據(jù)庫(kù)sdb,完成如下操作:(1)在ksb表中增加一個(gè)名為“備注”的字段、字段數(shù)據(jù)類型為“字符”、寬度為30。(2)在考生成績(jī)表kscjb中給成績(jī)字段設(shè)置有效性規(guī)則和默認(rèn)值,成績(jī)>=0AND成績(jī)<=150;默認(rèn)值為0。(3)通過(guò)“考生號(hào)”字段建立ksb表和kscjb表間的永久聯(lián)系,并為該聯(lián)系設(shè)置參照完整性約束:更新規(guī)則為“級(jí)聯(lián)”;刪除規(guī)則為“限制”;插入規(guī)則為“忽略”。(4)使用報(bào)表向?qū)Ы⒁粋€(gè)簡(jiǎn)單報(bào)表。要求選擇考生表ksb中所有字段;記錄不分組;報(bào)表樣式為_隨意式”;列數(shù)為1,字段布局為“列”,方向?yàn)椤翱v向”;排序字段為“考生號(hào)”(升序);報(bào)表標(biāo)題為“考生成績(jī)一覽表”;報(bào)表文件名為one.frx。標(biāo)準(zhǔn)答案:(1)①命令窗口執(zhí)行:MODIFYDATABASEsdb,打開數(shù)據(jù)庫(kù)設(shè)計(jì)器。②數(shù)據(jù)庫(kù)設(shè)計(jì)器中,右擊ksb表選擇【修改】,打開ksb表設(shè)計(jì)器,“字段”選項(xiàng)卡的“字段名”列的最后一個(gè)空白文本框中輸入字段名“備注”,“類型”中選“字符型”,“寬度”中輸入“30”,單擊“確定”保存修改。(2)在數(shù)據(jù)庫(kù)設(shè)計(jì)器中,右擊kscjb表,選擇【修改】快捷菜單命令,打開kscjb表設(shè)計(jì)器,在“字段”選項(xiàng)卡中選中“成績(jī)”,在“字段有效性”的“規(guī)則”文本框中輸入:成績(jī)>=0and成績(jī)<2150,在“默認(rèn)值”文本框中輸入:0。(3)①在數(shù)據(jù)庫(kù)設(shè)計(jì)器中,拖動(dòng)kbs表“索引”下方的主索引“考生號(hào)”到kscjb表中“索引”下方的普通索引“考生號(hào)”上,為兩個(gè)表建立聯(lián)系。②選中ksb和kscjb兩個(gè)表之間的關(guān)聯(lián)線(被選中的線會(huì)變粗),先執(zhí)行【數(shù)據(jù)庫(kù)】→【清理數(shù)據(jù)庫(kù)】菜單命令,清空數(shù)據(jù)庫(kù)表中帶有刪除標(biāo)記的記錄,然后執(zhí)行【數(shù)據(jù)庫(kù)】→【編輯參照完整性】菜單命令。在打開的“參照完整性”對(duì)話框的表格中:選擇“更新”為“級(jí)聯(lián)”;“刪除”為“限制”;“插入”為“忽略”。單擊“確定”保存修改。(4)①命令窗口執(zhí)行:OPENDATABASEsdb,打開sdb數(shù)據(jù)庫(kù)。②執(zhí)行【文件】→【新建】菜單命令,或單擊“常用”工具欄的“新建”按鈕,在“新建”中選“報(bào)表”,單擊“向?qū)А眻D標(biāo)按鈕,“向?qū)нx取”中選“報(bào)表向?qū)А表?xiàng),單擊“確定”按鈕,啟動(dòng)報(bào)表向?qū)?。③“步驟1.字段選取”的“數(shù)據(jù)庫(kù)和表”下選“ksb”表,將“可用字段”全部添加到“選定字段”中,單擊“下一步”按鈕。④“步驟2.分組記錄”中,單擊“下一步”。⑤“步驟3.選擇報(bào)表樣式”的“樣式”下選擇“隨意式”,單擊“下一步”⑥“步驟4.定義報(bào)表布局”的“列數(shù)”下輸入“1”,在“字段布局”下選擇“列”,在“方向”下選擇“縱向”,單擊“下一步”。⑦“步驟5.排序記錄”中雙擊“可用的字段或索引標(biāo)識(shí)”中的“考生號(hào)”字段到“選定字段”列表中,再選擇“升序”,單擊“下一步”。⑧“步驟6.完成”中“報(bào)表標(biāo)題”下輸入“考生成績(jī)一覽表”,單擊“完成”按鈕。⑨在“另存為”對(duì)話框的“保存報(bào)表為:”框中輸入報(bào)表文件名one,單擊“保存”按鈕。參照完整性、創(chuàng)建簡(jiǎn)單報(bào)表。知識(shí)點(diǎn)解析:本題考查了表結(jié)構(gòu)的修改:有效性規(guī)則的建立及參照完整性的設(shè)置:報(bào)表向?qū)У氖褂?。在表設(shè)計(jì)器中對(duì)表中字段建立有效性規(guī)則和設(shè)置默認(rèn)值是操作,要注意先選中需要建立有效性規(guī)則的字段。建參照完整性前要先建立兩個(gè)表的關(guān)聯(lián),且一個(gè)表中必須建立關(guān)聯(lián)字段的主索引(或候選索引),另一個(gè)表要建立普通索引,建立聯(lián)系后要先清理數(shù)據(jù)庫(kù),再設(shè)置參照完整性。二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、在考生文件夾下,打開招生數(shù)據(jù)庫(kù)sdb,完成如下簡(jiǎn)單應(yīng)用:(1)使用一對(duì)多表單向?qū)нx擇ksb表和kscjb表生成一個(gè)名為two的表單。要求從父表ksb中選擇所有字段,從子表kscjb中選擇所有字段,使用“考生號(hào)”建立兩表之間的關(guān)系,樣式為陰影式;按鈕類型為圖片按鈕;排序字段為考生號(hào)(來(lái)自ksb),升序;表單標(biāo)題為“考生數(shù)據(jù)輸入維護(hù)”。(2)在考生文件夾下打開命令文件three.prg,該命令文件用來(lái)查詢所有成績(jī)都高于或等于平均分的學(xué)生的考生號(hào)和姓名。并將查詢結(jié)果存儲(chǔ)到表three中。注意,該命令文件在第3行、第6行、第9行有錯(cuò)誤,打開該命令文件,直接在錯(cuò)誤處修改,不可改變SQL語(yǔ)句的結(jié)構(gòu)和短語(yǔ)的順序,不允許增加、刪除或合并行。標(biāo)準(zhǔn)答案:(1)步驟1:命令窗口執(zhí)行:OPENDATABASEsdb,打開SDB數(shù)據(jù)庫(kù)。步驟2:執(zhí)行【文件】→【新建】菜單命令,或單擊“常用”工具欄的“新建”按鈕,在“新建”對(duì)話框中選“表單”選項(xiàng),單擊“向?qū)А卑粹o,“向?qū)нx取”對(duì)話框中選“一對(duì)多表單向?qū)А表?xiàng),單擊“確定”,啟動(dòng)向?qū)?。步驟3:“步驟1.從父表選擇字段”的“數(shù)據(jù)庫(kù)和表”下選“kbs”表,將“可用字段”全部添加到“選定字段”中,單擊“下一步”。步驟4:“步驟2.從子表選擇字段”的“數(shù)據(jù)庫(kù)和表”下選“kscjb"表,將“可用字段”全部添加到“選定字段”中,單擊“下一步”。步驟5:“步驟3.建立表之間的關(guān)系”中系統(tǒng)自動(dòng)建立兩個(gè)表的聯(lián)系,單擊“下一步”。步驟6:“步驟4.選擇表單樣式”的“樣式”下選“陰影式”,在“按鈕類型”下“圖片按鈕”,單擊“下一步”。步驟7:“步驟5.排序次序”中雙擊“可用的字段或索引標(biāo)識(shí)”中的“考生號(hào)”字段到“選定字段”列表中,再選擇“升序”,單擊“下一步”。步驟8:“步驟6.完成”中的“請(qǐng)鍵入表單標(biāo)題”下方輸入“考生數(shù)據(jù)輸入維護(hù)”,單擊“完成”按鈕。步驟9:在“另存為”對(duì)話框的“保存表單為:”框中輸入表單文件名two,單擊“保存”按鈕。創(chuàng)建和運(yùn)行表單。(2)步驟1:命令窗口執(zhí)行:MODIFYCOMMANDthree,打開three.prg程序,命令中的命令代碼如下:*該命令文件用來(lái)查詢所有成績(jī)都高于或等于平均分的學(xué)生的考生號(hào)和姓名。并將查詢結(jié)果存儲(chǔ)到表THREE中。*該命令文件在第3行、第6行、第9行有錯(cuò)誤,打開該命令文件。*直接在錯(cuò)誤處修改,不可改變SQL語(yǔ)句的結(jié)構(gòu)和短語(yǔ)的順序,不允許增加、刪除或合并行。SELECTAVG(成績(jī));FROMkscjb;INTOCURSORtemSELECT考生號(hào),姓名;FROMksb;WHERE考生號(hào)EXISTS;(SELECT*;FROMkscjb;WHERE成績(jī)<tem(1),考生號(hào)=ksb.考生號(hào));INTOTABLEthree修改程序中的錯(cuò)誤行,修改后的程序如下:SELECTAVG(成績(jī));FROMkscjb;INTOARRAYtem&&將平均成績(jī)存放到數(shù)組array中SELECT考生號(hào),姓名;&&外查詢:在ksb表中將每一個(gè)考生編號(hào)與內(nèi)查詢的結(jié)果做比較FROMksb;WHERENOTEXISTS;(SELECT*;&&在內(nèi)查詢中的kscjb表中判斷是否該考生編號(hào)有一門成績(jī)小于平均成績(jī)FROMkscjb;WHERE成績(jī)<tem(1)and考生號(hào)=ksb.考生號(hào));INTOTABLEthree步驟2:保存文件修改,在命令窗口執(zhí)行命令:DOthree.prg,執(zhí)行程序文件。SQL簡(jiǎn)單查詢、嵌套查詢。知識(shí)點(diǎn)解析:(1)本題主要考查的是表單向?qū)У氖褂谩?2)本題主要考查的是SQL簡(jiǎn)單查詢和嵌套查詢。本題先用一個(gè)SQL簡(jiǎn)單查詢獲得平均分,由于平均分是一個(gè)數(shù)字,并且以后還要將考生成績(jī)與該平均分進(jìn)行比較,所以應(yīng)將其存放在一個(gè)數(shù)組中,而不是存放在臨時(shí)表中,所以應(yīng)將第一處錯(cuò)誤INTOCURSORtemp改為INTOARRAYtemp。題中第二個(gè)SQL語(yǔ)句為嵌套查詢,使用了exists謂詞,用來(lái)檢查子查詢中是否有結(jié)果返回。根據(jù)本題要求,要查找所有成績(jī)都高于或等于平均分的學(xué)生的考生號(hào)和姓名,換句話說(shuō),也就是只要考生有一門成績(jī)小于平均分,該考生就不符合條件。查詢的基本過(guò)程是:對(duì)于外查詢中的ksb表中的每個(gè)考生號(hào),在內(nèi)查詢中的kscjb表中判斷是否該考生編號(hào)有一門成績(jī)小于平均成績(jī),只要有一門成績(jī)小于平均成績(jī),該考生號(hào)都不該被查找出來(lái),故第二處錯(cuò)誤是在外查詢中的條件中應(yīng)使用notexists,而不是exists。在內(nèi)查詢中,條件“成績(jī)<temp(1)”和“考生號(hào)=ksb.考生號(hào)”應(yīng)該用AND聯(lián)接。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下,打開招生數(shù)據(jù)庫(kù)sdb,完成如下綜合應(yīng)用:①創(chuàng)建文件名為form的表單,將表單標(biāo)題改為:錄取研究生。②在表單中設(shè)計(jì)“錄取”和“退出”兩個(gè)按鈕。兩個(gè)按鈕功能分別如下:在“錄取”按鈕(Commandl)中,編寫程序,查詢總成績(jī)大于或等于330分的考生的“考生號(hào)”、“姓名”、“性別”、“單位”和該生的“政治成績(jī)”、“外語(yǔ)成績(jī)”、“高數(shù)成績(jī)”(即高等數(shù)學(xué)成績(jī))、“專業(yè)課成績(jī)”、“總成績(jī)”,并將結(jié)果按“總成績(jī)”降序排序存儲(chǔ)到表four中。表four(需要自己創(chuàng)建或生成)的字段名為:“考生號(hào)”、“姓名”、“性別”、“單位”、“政治成績(jī)”、“外語(yǔ)成績(jī)”、“高數(shù)成績(jī)”、“專業(yè)課成績(jī)”、“總成績(jī)”(各成績(jī)字段的類型為N(5,1),其他字段的類型與原表中一致)。單擊“退出”按鈕(Command2)時(shí),關(guān)閉表單。③表單設(shè)計(jì)完成后,運(yùn)行表單,單擊“錄取”按鈕進(jìn)行統(tǒng)計(jì),然后單擊“退出”按鈕關(guān)閉表單。注:在考試科目代碼表dm中存儲(chǔ)了各考試科目與考試科目名對(duì)應(yīng)關(guān)系。標(biāo)準(zhǔn)答案:步驟1:在命令窗口執(zhí)行命令:CREATEFORMform,打開表單設(shè)計(jì)器新建表單。向表單添加兩個(gè)命令按鈕。步驟2:選擇表單對(duì)象,修改屬性值,見表4—44。步驟3:雙擊命令按鈕,編寫各個(gè)命令按鈕的Click事件代碼如下:*****“錄取”按鈕的Click事件代碼*****OPENDATABASESDBSELECTKSB.考生號(hào),姓名,性別,單位,SUM(成績(jī))總成績(jī)FROMKSB,KSCJB;WHEREKSB.考生號(hào)=KSCJB.考生號(hào)GROUPBYKSB.考生號(hào);HAVINGSUM(成績(jī))>=330INTOCURSORTEMP1SELECT考生號(hào),姓名,性別,單位FROMTEMPl;ORDERBY總成績(jī)DESCINTOTABLEFOURALTERTABLEFOURADD政治成績(jī)N(5,1)ALTERTABLEFOURADD外語(yǔ)成績(jī)N(5,1)ALTERTABLEFOURADD高數(shù)成績(jī)N(5,1)ALTER.TABLEFOURADD專業(yè)課成績(jī)N(5,1)ALTERTABLEFOURADD總成績(jī)N(5,1)SELECT考生號(hào),考試科目名,成績(jī)FROMKSCJB,DMWHEREKSCJB.考試科目=DM.考試科目;INTOCURSORTEMP2SELECTFOURDOWHILENOTEOF()SELECT成績(jī)FROMTEMP2WHER考生號(hào)=FOUR.考生號(hào)AND考試科目名="政治";INTOARRAYA1REPLACE政治成績(jī)WITHA1SELECT成績(jī)FROMTEMP2WHER考生號(hào)=FOUR.考生號(hào)AND考試科目名="外語(yǔ)";INTOARRAYA2REPLACE外語(yǔ)成績(jī)WITHA2SELECT成績(jī)FROMTEMP2WHER考生號(hào)=FOUR.考生號(hào)AND考試科目名="高等數(shù)學(xué)";INTOARRAYA3REPLACE高數(shù)成績(jī)WITHA3SELE成績(jī)FROMTEMP2WHER考生號(hào)=FOUR.考生號(hào)AND考試科目名="專業(yè)課";INTOARRAYA4REPLACE專業(yè)課成績(jī)WITHA4REPLACE總成績(jī)WITH政治成績(jī)+外語(yǔ)成績(jī)+高數(shù)成績(jī)+專業(yè)課成績(jī)SKIPENDDOCLOSEDATABASE*****“退出”按鈕的Click事件代碼*****THISFORM.RELEASE步驟4:?jiǎn)螕簟俺S谩惫ぞ邫谥械摹斑\(yùn)行”按鈕運(yùn)行表單,單擊“錄取”進(jìn)行計(jì)算,單擊“退出”關(guān)閉表單?;拘涂丶槐韱蔚氖录?、方法和屬性;程序基本結(jié)構(gòu);SQL分組與計(jì)算查詢。知識(shí)點(diǎn)解析:本題主要考查的是表單的建立、常用屬性的設(shè)置、DOWHILE循環(huán)結(jié)構(gòu)和SQL分組計(jì)算查詢、SQL定義功能、VisualFoxPro修改記錄命令。本題基本解題思路可按以下步驟進(jìn)行:第一步,根據(jù)ksb和kscjb兩張表,利用分組計(jì)算查詢求出總成績(jī)大于等于330分的考生的考生號(hào)、姓名、性別、單位和總成績(jī),將結(jié)果保存到一個(gè)臨時(shí)表temp1中。這里,總成績(jī)用SUM函數(shù)實(shí)現(xiàn)。第二步,通過(guò)臨時(shí)表templ查找出“考生號(hào)”、“姓名”、“性別”、“單位”4個(gè)字段,并按總成績(jī)降序排序,將結(jié)果保存到表FOUR中。在這里,這四個(gè)字段正是題目中要求的FOUR表的前四個(gè)字段。第三步,分別用五個(gè)“ALTERTABLE”語(yǔ)句為FOUR表增加五個(gè)字段:政治成績(jī)、外語(yǔ)成績(jī)、高數(shù)成績(jī)、專業(yè)課成績(jī)和總成績(jī)。為表增加字段的關(guān)鍵字是ADD。此時(shí),題目所要求的FOUR表的結(jié)構(gòu)已經(jīng)完成,并且前四個(gè)字段的值也已經(jīng)按要求完成了,下面的任務(wù)就是將后五個(gè)字段的值填充完整。第四步,根據(jù)dm和kscjb兩張表求出所有考生的考生號(hào)、考試科目名和成績(jī),將結(jié)果保存到臨時(shí)表temp2中。第五步,將FOUR表作為當(dāng)前表,將記錄指針指向文件首,然后開始執(zhí)行DOWHILE循環(huán)對(duì)FOUR表中的每條記錄進(jìn)行處理。DOWHILE語(yǔ)句的循環(huán)條件是當(dāng)記錄指針沒(méi)有到達(dá)FOUR表末尾時(shí),執(zhí)行循環(huán)體中的語(yǔ)句。循環(huán)體功能:用SQL簡(jiǎn)單查詢從臨時(shí)表temp2中求出與FOUR表當(dāng)前所指記錄“考生號(hào)”相同并且“考試科目名”是“政治”的“成績(jī)”字段值,將該值保存到數(shù)組a1中,再通過(guò)REPLACE命令修改four表當(dāng)前記錄的“政治成績(jī)”字段值。參照以上操作,可以將four表當(dāng)前記錄的“外語(yǔ)成績(jī)”、“高數(shù)成績(jī)”和“專業(yè)課成績(jī)”三個(gè)字段值進(jìn)行修改。而當(dāng)前記錄的“總成績(jī)”字段值可以由當(dāng)前記錄的“政治成績(jī)”、“英語(yǔ)成績(jī)”、“高數(shù)成績(jī)”和“專業(yè)課成績(jī)”的和得到。修改完畢后,four表的記錄指針指向下一條記錄,又開始繼續(xù)判斷表指針是否到達(dá)表末尾,如果沒(méi)有,則進(jìn)入循環(huán)體繼續(xù)同樣的操作,直到four表的記錄指針指向表末尾,處理完four表中的所有記錄,程序結(jié)束。國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷第4套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考生文件夾下完成下列操作:1.新建“點(diǎn)歌”數(shù)據(jù)庫(kù),將考生文件夾下的所有自由表添加到該數(shù)據(jù)庫(kù)中。2.新建一個(gè)項(xiàng)目“點(diǎn)歌系統(tǒng)”,將“點(diǎn)歌”數(shù)據(jù)庫(kù)添加進(jìn)該項(xiàng)目。3.為“歌曲”表創(chuàng)建一個(gè)主索引,索引名為PK,索引表達(dá)式為“歌曲id”;再創(chuàng)建一個(gè)普通索引,索引名和索引表達(dá)式均為“演唱者”,以上索引都為升序。4.為“歌手”表創(chuàng)建一個(gè)主索引,索引名和索引表達(dá)式都為“歌手id”,升序。為“歌曲”和“歌手”表創(chuàng)建永久聯(lián)系,并設(shè)置參照完整性約束:更新規(guī)則為“級(jí)聯(lián)”,其他默認(rèn)。標(biāo)準(zhǔn)答案:(1)步驟1:?jiǎn)螕舫S霉ぞ邫凇靶陆ā卑粹o或選擇菜單欄“文件”一“新建”命令,新建一個(gè)數(shù)據(jù)庫(kù),在彈出的對(duì)話框中輸入文件名“點(diǎn)歌”,單擊“保存”按鈕,如圖4.19所示。步驟2:在打開的數(shù)據(jù)庫(kù)設(shè)計(jì)器中,右鍵單擊數(shù)據(jù)庫(kù)空白處,選擇“添加表”命令,將考生文件夾下的所有自由表添加到數(shù)據(jù)庫(kù)中,如圖4.20所示。(2)步驟1:?jiǎn)螕舫S霉ぞ邫凇靶陆ā卑粹o或選擇菜單欄“文件”一“新建”命令,新建一個(gè)項(xiàng)目,在彈出的對(duì)話框中輸入文件名“點(diǎn)歌系統(tǒng)”,如圖4.21所示。步驟2:在“數(shù)據(jù)”選項(xiàng)卡中單擊“添加”按鈕,將“點(diǎn)歌”數(shù)據(jù)庫(kù)添加進(jìn)項(xiàng)目中,如圖4.22所示。(3)步驟1:在“數(shù)據(jù)庫(kù)設(shè)計(jì)器一點(diǎn)歌系統(tǒng)”中,右鍵單擊“歌曲”表,選擇“修改”命令,如圖4.23所示。步驟2:在打開的表設(shè)計(jì)器中,單擊“索引”選項(xiàng)卡,輸入索引名稱“PK”,類型設(shè)為“主索引”,表達(dá)式為“歌曲id’,,設(shè)置為升序。再輸入一個(gè)索引,名稱和表達(dá)式均為“演唱者”,類型設(shè)為“普通索引”,設(shè)置為升序,單擊“確定”按鈕保存對(duì)表的修改,如圖4.24所示。(4)步驟1:在“數(shù)據(jù)庫(kù)設(shè)計(jì)器一點(diǎn)歌系統(tǒng)”中,右鍵單擊“歌手”表,選擇“修改”命令,在打開的表設(shè)計(jì)器中,單擊“索引”選項(xiàng)卡,輸入索引名稱“歌手id”,類型設(shè)為“主索引”,表達(dá)式為“歌手id”,單擊“確定”按鈕,如圖4.25所示。步驟2:在數(shù)據(jù)庫(kù)設(shè)計(jì)器窗口下將“歌手”表中的“歌手id”拖動(dòng)至“歌曲”表中的“演唱者”處,即可建立兩表間聯(lián)系,結(jié)果如圖4.26所示。步驟3:選擇“數(shù)據(jù)庫(kù)”一“清理數(shù)據(jù)庫(kù)”菜單命令,首先清理數(shù)據(jù)庫(kù);在已建立的關(guān)系線上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中單擊“編輯參照完整性”按鈕,在“編輯參照完整性生成器”對(duì)話框中,選中“更新規(guī)則”選項(xiàng)卡下的“級(jí)聯(lián)”單選按鈕,其他默認(rèn)。單擊“確定”按鈕,保存改變,生成參照完整性代碼并退出,如圖4.27所示。知識(shí)點(diǎn)解析:暫無(wú)解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、在考生文件夾下完成如下簡(jiǎn)單應(yīng)用:1.建立一個(gè)滿足下列要求的表單文件tab。(1)表單中包含一個(gè)頁(yè)框控件Pageframel,該頁(yè)框含有3個(gè)頁(yè)面:Page1、Page2、Page3,三個(gè)頁(yè)面的標(biāo)題依次為“學(xué)生”、“課程”和“成績(jī)”。(2)將student(學(xué)生)表、colLrse(課程)表和score(成績(jī))表分別添加到表單的數(shù)據(jù)環(huán)境中。(3)直接用拖曳的方法使得在頁(yè)框控件的相應(yīng)頁(yè)面上分別顯示student(學(xué)生)表、course(課程)表和score(成績(jī))表的內(nèi)容。(4)表單中包含一個(gè)“退出”命令按鈕(Command1),單擊該按鈕關(guān)閉并釋放表單。2.給定表單modi2.scx,功能是:要求用戶輸入一個(gè)正整數(shù),然后計(jì)算從1到該數(shù)字之間有多少偶數(shù)、多少奇數(shù)、多少能被3整除的數(shù),并分別顯示出來(lái),最后統(tǒng)計(jì)出滿足條件的數(shù)的總數(shù)量。請(qǐng)修改并調(diào)試該程序,使之能夠正確運(yùn)行。改錯(cuò)要求:“計(jì)算”按鈕的Click事件代碼中共有3處錯(cuò)誤,請(qǐng)修改“***found***”下面語(yǔ)句行的錯(cuò)誤,必須在原來(lái)位置修改,不能增加或刪減程序行(其中第一行的賦值語(yǔ)句不許減少或改變變量名)?!巴顺觥卑粹o的Click事件代碼中有一處錯(cuò)誤,該按鈕的功能是關(guān)閉并釋放表單。標(biāo)準(zhǔn)答案:(1)步驟1:在命令窗口輸入“Createformtab”,按下回車鍵。新建一個(gè)表單文件tab,在表單控件中單擊相應(yīng)的控件,然后在表單上畫出一個(gè)頁(yè)框控件、一個(gè)命令按鈕。將頁(yè)框改為3個(gè)頁(yè)面,如圖3.89所示。步驟2:在頁(yè)框上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“編輯”項(xiàng),設(shè)置頁(yè)框各頁(yè)的標(biāo)題屬性,如圖3.90所示。Page1Caption學(xué)生Page2Caption課程Pase3Caption成績(jī)步驟3:在表單空白處單擊鼠標(biāo)右鍵,在彈出的快捷菜單中單擊“數(shù)據(jù)環(huán)境”命令,為表單添加表“student”、“course”和“score”到數(shù)據(jù)環(huán)境中。步驟4:在頁(yè)框上單擊鼠標(biāo)右鍵,選擇“編輯”命令,按題目的要求將表拖曳到相應(yīng)的頁(yè)框中,如圖3.91所示。步驟5:將命令按鈕的標(biāo)題改為“退出”,輸入其Click事件“ThisForm.Release”。步驟6:保存并運(yùn)行表單查看結(jié)果。(2)打開表單modi2,修改“計(jì)算”命令按鈕的Click事件,如圖3.92所示。以同樣的方式修改“退出”按鈕的Click事件代碼為:ThisForm.Release。知識(shí)點(diǎn)解析:在第1小題中,新建表單并添加控件,修改各控件的屬性值,其中頁(yè)框的PageCount屬性用于設(shè)置頁(yè)框中所含的頁(yè)面數(shù)。在第2小題中,第1處錯(cuò)誤語(yǔ)句的功能是將數(shù)值0賦給3個(gè)內(nèi)存變量x1、x2、x3;第2處錯(cuò)誤語(yǔ)句的功能是將文本框TEXT1中的值賦給變量x;根據(jù)題目的要求,第3處錯(cuò)誤語(yǔ)句的功能是判斷一個(gè)數(shù)能否被3整除。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、(1)在考生文件夾下建立一個(gè)文件名和表單名均為oneform的表單,該表單中包括兩個(gè)標(biāo)簽(Label1和Label2)、一個(gè)選項(xiàng)按鈕組(OptionGroupl)、一個(gè)組合框(Combol)和兩個(gè)命令按鈕(Command1和Command2),Label1和Label2的標(biāo)題分別為“工資”和“實(shí)例”,選項(xiàng)組中有兩個(gè)選項(xiàng)按鈕,標(biāo)題分別為“大于等于”和“小于”,Command1和Command2的標(biāo)題分別為“生成”和“退出”,如下圖所示。(2)將組合框的RowSourceType和RowSource屬性手工指定為5和a,然后在表單的Load事件代碼中定義數(shù)組a并賦值,使得程序開始運(yùn)行時(shí),組合框中有可供選擇的“工資”實(shí)例為3000、4000和5000。(3)為“生成”命令按鈕編寫程序代碼,其功能是:表單運(yùn)行時(shí),根據(jù)選項(xiàng)按鈕組和組合框中選定的值,將“教師表”中滿足工資條件的所有記錄存入自由表salary.dbf中,表中的記錄先按“工資”降序排列,若“工資”相同再按“姓名”升序排列。(4)為“退出”命令按鈕設(shè)置Click事件代碼,其功能是關(guān)閉并釋放表單。(5)運(yùn)行表單,在選項(xiàng)組中選擇“小于”,在組合框中選擇“4000”,單擊“生成”命令按鈕,最后單擊“退出”命令按鈕。標(biāo)準(zhǔn)答案:步驟1:在命令窗口輸入“CreateFormoneform"并按回車鍵,新建一個(gè)名為oneform表單。步驟2:在表單控件工具欄中以拖曳的方式向表單中添加兩個(gè)標(biāo)簽、一個(gè)選項(xiàng)組、一個(gè)組合框和兩個(gè)命令按鈕,并修改各控件的屬性,如圖3.86所示。步驟3:雙擊表單空白處,編寫表單的:Load事件代碼。********水表單的Load事件代碼********publica(3)a(1)="3000"a(2)="4000"a(3)="5000"*****************************************************步驟4:雙擊命令按鈕,分別編寫“生成”和“退出”按鈕的Click事件代碼。********“生成”按鈕的click事件代碼********&&對(duì)x進(jìn)行賦值x=val(ThisForm.combol.Value)&&判斷分支一ifThisForm.Optiongroupl.Value=1&&選擇工資大于等于x的記錄,結(jié)果按工資的降序排列并存儲(chǔ)入表salary中select*from教師表where工資>=xor-derby工資desc,姓名intotablesalary&&判斷分支二Else&&選擇工資小于x的記錄,結(jié)果按工資的降序排列并存儲(chǔ)入表salary中select*from教師表where工資知識(shí)點(diǎn)解析:建立表單并添加控件,然后按要求修改各控件的屬性;在表單的Load事件中定義組合框的數(shù)據(jù)源,完成命令按鈕的代碼;當(dāng)列表框要求為數(shù)組時(shí),可以在表單的Load事件中進(jìn)行定義;為選項(xiàng)按鈕組設(shè)置標(biāo)題,需要用鼠標(biāo)右鍵單擊選項(xiàng)按鈕組控件,選擇“編輯”命令。國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷第5套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考生文件夾下,有一個(gè)學(xué)生數(shù)據(jù)庫(kù)sdb,打開該數(shù)據(jù)庫(kù),完成如下操作:(1)為學(xué)生表student的“性別”字段增加約束:性別$”男女”,出錯(cuò)提示信息為“性別必須是男或女”,默認(rèn)值為“女”。(2)為學(xué)生表student創(chuàng)建一個(gè)主索引,主索引的索引名為sid,索引表達(dá)式為學(xué)號(hào)。為課程表course創(chuàng)建一個(gè)主索引,主索引的索引名為cid,索引表達(dá)式為課程號(hào)。為選課表sc創(chuàng)建一個(gè)主索引和兩個(gè)普通索引(升序),主索引的索引名為scid,索引表達(dá)式為“學(xué)號(hào)+課程號(hào)”;一個(gè)普通索引的索引名為sid,索引表達(dá)式為學(xué)號(hào);另一個(gè)普通索引的索引名為cid,索引表達(dá)式為課程號(hào)。(3)通過(guò)“學(xué)號(hào)”字段建立選課表sc和學(xué)生表student表間的永久聯(lián)系。通過(guò)“課程號(hào)”字段建立選課表sc與課程表course間的永久聯(lián)系。并為以上建立的聯(lián)系設(shè)置參照完整性約束:更新規(guī)則為“級(jí)聯(lián)”;刪除規(guī)則為“限制”;插入規(guī)則為“限制”。(4)使用報(bào)表向?qū)Ы⒁粋€(gè)簡(jiǎn)單報(bào)表。要求選擇學(xué)生表student表中所有字段;記錄不分組;報(bào)表樣式為“隨意式”:列數(shù)為“1”,字段布局為“列”,方向?yàn)椤翱v向”;排序字段為“學(xué)號(hào)”,升序;報(bào)表標(biāo)題為“學(xué)生基本情況一覽表”:報(bào)表文件名為one.fix。標(biāo)準(zhǔn)答案:【操作步驟】(1)①命令窗口執(zhí)行:MODIFYDATABASEsdb,打開數(shù)據(jù)庫(kù)設(shè)計(jì)器。②數(shù)據(jù)庫(kù)設(shè)計(jì)器中,右擊student表,選擇【修改】,打開表設(shè)計(jì)器,“字段”選項(xiàng)卡中選中“性別”,“字段有效性”的“規(guī)則”中輸入:性別$“男女”,“信息”框中輸入:“性別必須是男或女”,“默認(rèn)值”文本框中輸入:“女”。(2)①接上題,在student表設(shè)計(jì)器中,“字段”選項(xiàng)卡中選中“學(xué)號(hào)”,“索引”列中選“升序”,在“索引”選項(xiàng)卡中修改“索引名”為“sid”,修改“類型”為“主索引”,單擊“確定”按鈕保存表結(jié)構(gòu)修改。②與上題同樣的方法為course表建立名為“cid”,的“主索引”,單擊“確定”按鈕保存表結(jié)構(gòu)修改。③數(shù)據(jù)庫(kù)設(shè)計(jì)器中,右擊sc表選擇【修改】,打開表設(shè)計(jì)器,“索引”選項(xiàng)卡中,“索引名”下方的文本框中輸入“scid”,“索引”選項(xiàng)卡中將“類型”選擇為“主索引”,“表達(dá)式”下方的文本框中輸入“學(xué)號(hào)+課程號(hào)”,建立主索引。④接第③步,在SC表設(shè)計(jì)器的“索引”選項(xiàng)卡中,第二行的“索引名”文本框中輸入“sid”,將“類型”選擇為“普通索引”,“表達(dá)式”下方的文本框中輸入“學(xué)號(hào)”,建立一個(gè)普通索引;在第三行的“索引名"文本框中輸入“cid”,“類型”選擇為“普通索引”,“表達(dá)式”中輸入“課程號(hào)”,建立普通索引,單擊“確定”保存修改。(3)①在數(shù)據(jù)庫(kù)設(shè)計(jì)器中,拖動(dòng)student表“索引”下方的主索引“sid”到sc表中“索引”下方的普通索引“sid”上,為兩個(gè)表建立聯(lián)系。②拖動(dòng)course表“索引”下方的主索引“scid”到sc表中“索引”下方的普通索引“cid”上,為兩個(gè)表建立聯(lián)系。③選中student和sc兩個(gè)表之間的關(guān)聯(lián)線(被選中的線會(huì)變粗),首先執(zhí)行【數(shù)據(jù)庫(kù)】→【清理數(shù)據(jù)庫(kù)】菜單命令,清空數(shù)據(jù)庫(kù)表中帶有刪除標(biāo)記的記錄,然后執(zhí)行【數(shù)據(jù)庫(kù)】→【編輯參照完整性】菜單命令。在打開的“參照完整性”對(duì)話框的表格中,將其中的兩對(duì)關(guān)系均做如下操作:選擇“更新”下的單元格內(nèi)容為“級(jí)聯(lián)”;“刪除”下的單元格內(nèi)容為“限制”;“插入”下的單元格內(nèi)容為“限制”。單擊“確定”按鈕保存參照完整性的修改。(4)①命令窗口執(zhí)行:OPENDATABASEsdb,打開sdb數(shù)據(jù)庫(kù)。②執(zhí)行【文件】→【新建】菜單命令,或單擊“常用”工具欄的“新建”按鈕,在彈出的“新建”對(duì)話框中選中“報(bào)表”選項(xiàng),單擊“向?qū)А卑粹o,彈出“向?qū)нx取’’對(duì)話框,選中“報(bào)表向?qū)А表?xiàng),單擊“確定"按鈕,啟動(dòng)報(bào)表向?qū)?。③“步驟1-字段選取”的“數(shù)據(jù)庫(kù)和表”下選student表,將“可用字段”中的字段全部添加到“選定字段”中,單擊“下一步”按鈕。④“步驟2-分組記錄”中,單擊“下一步”按鈕。⑤“步驟3-選擇報(bào)表樣式”的“樣式”下選擇“隨意式”,單擊“下一步”按鈕。⑥“步驟4-定義報(bào)表布局”的“列數(shù)”下輸入“1”,在“字段布局”下選“列”,在“方向”下選“縱向”,單擊“下一步”按鈕。⑦“步驟5-排序記錄”中雙擊“可用的字段或索引標(biāo)識(shí)”中的“學(xué)號(hào)”字段到“選定字段”中,再選擇“升序”,單擊“下一步”按鈕。⑧“步驟6-完成”中“報(bào)表標(biāo)題"下方文本框中輸入“學(xué)生基本情況一覽表”,單擊“完成”按鈕。⑨在“另存為”對(duì)話框的“保存報(bào)表為:”.框中輸入報(bào)表文件名one,單擊“保存”按鈕。知識(shí)點(diǎn)解析:暫無(wú)解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)在考生文件夾下已有表單文件formone.scx,如圖3.26所示,其中包含一個(gè)列表框、一個(gè)表格和一個(gè)命令按鈕。請(qǐng)按下面要求完成相應(yīng)的操作:①在表單的數(shù)據(jù)環(huán)境中添加orders表。②將列表框List1設(shè)置成多選,另外將其的RowSourceType屬性值設(shè)置為“8-結(jié)構(gòu)”、RowSource設(shè)置為orders。③將表格Gridl的RecordSourceType的屬性值設(shè)置為“4-SQL說(shuō)明”。④修改“顯示”按鈕的Click事件代碼。當(dāng)單擊該按鈕時(shí),表格Grid1內(nèi)將顯示在列表框中所選orders表中指定字段的內(nèi)容。(2)利用查詢?cè)O(shè)計(jì)器創(chuàng)建查詢,從orders、employee和customer表中查詢2001年5月1日以后(含)所簽所有訂單的信息。查詢結(jié)果依次包含“訂單號(hào)”、“簽訂日期”、“金額”、“簽訂者”和“客戶名”5項(xiàng)內(nèi)容,其中“簽訂者”為簽訂訂單的職員姓名。各記錄按“簽訂日期”降序排序,簽訂日期相同按“金額”降序排序;查詢?nèi)ハ驗(yàn)楸韙ableone。最后將查詢保存在queryone.qpr文件中,并運(yùn)行該查詢。標(biāo)準(zhǔn)答案:(1)【操作步驟】步驟1:命令窗口執(zhí)行:MODIFYFORMformone,打開表單設(shè)計(jì)器修改表單。步驟2:右擊表單選擇【數(shù)據(jù)環(huán)境】,在表單數(shù)據(jù)環(huán)境中擊右鍵選擇【添加】,在“添加表或視圖”對(duì)話框中雙擊orders表添加到數(shù)據(jù)環(huán)境中。步驟3:選中表單中的列表框控件,將RowSourceType屬性值設(shè)置為:8一結(jié)構(gòu),將RowSource屬性值設(shè)置為:orders,將MoultiSelect屬性值設(shè)置為:.T;選中表格(Gridl)控件,將RowSourceType屬性值設(shè)置為:4-SOL說(shuō)明。步驟4:“顯示”按鈕(Commandl)的Click事件代碼如下:*****“顯示”按鈕的Click事件代碼******下面代碼的功能是根據(jù)用戶對(duì)列表框的選擇結(jié)果構(gòu)建字段列表,然后進(jìn)一步構(gòu)建select語(yǔ)句并據(jù)此為表格的相關(guān)屬性設(shè)值。*修改所有***FOUND***下面的一條語(yǔ)句。*不能修改其他語(yǔ)句。不能增加語(yǔ)句,也不能刪除語(yǔ)句。s=""f=.T.***FOUND***FORi=1TOthisform.Listl.ColumnCountIFthisform.Listl.Selected(i)IFf***FOUND***s=thiSform.LiStl.valuef=.F.ELSE***FOUND***s=S+thiSform.LiStl.valueENDIFENDIFENDFORSt=“select&sfromordersintoCUrsortmp”thiSform.Gridl.RecordSOUrce=St命令按鈕修改后的事件代碼如下:S=“”f=.T.***FOUND***FORi=lTOthisform.Listl.ListCountIFthisform.Listl.Selected(i)IFf***FOUND***s=thiSform.Listl.List(i)f=.F.ELSE***FOUND***s=s+“,”+thisform.Listl.List(i)ENDIFENDIFENDFORst=“select&SfromordersintocurSortmp”thiSform.Gridl.RecordSource=st步驟5:?jiǎn)螕簟俺S谩惫ぞ邫谥械摹斑\(yùn)行”按鈕查看結(jié)果,并單擊“輸出數(shù)據(jù)”按鈕產(chǎn)生temmdbf表文件,保存。(2)【操作步驟】步驟1:命令窗口執(zhí)行:OPENDATABASE訂單管理,打開數(shù)據(jù)庫(kù)環(huán)境。步驟2:命令窗口執(zhí)行:CREATEQUERYqueryone,打開查詢?cè)O(shè)計(jì)器,在“添加表或視圖”對(duì)話框中,分別雙擊employee、orders和customer表(注意:一定要按順序添加表),將表添加到查詢?cè)O(shè)計(jì)器中,此時(shí),添加的表會(huì)按照數(shù)據(jù)庫(kù)中已存在的表間聯(lián)系自動(dòng)為3個(gè)表在查詢?cè)O(shè)計(jì)器中建立聯(lián)系。步驟3:依次雙擊orders表中的“訂單號(hào)”、“簽訂日期”、“金額”字段,添加到“字段”選項(xiàng)卡的“選定字段”列表中;“字段”選項(xiàng)卡的“函數(shù)和表達(dá)式”下的文本框中輸入:Employee.姓名AS簽訂者,單擊“添加”按鈕添加到“選定字段”中;雙擊customer表中的“客戶名”字段添加到“選定字段”列表中。步驟4:“篩選”選項(xiàng)卡的“字段名”中選擇“Orders.簽訂日期”字段,“條件”下拉框中選擇“>=”,在“實(shí)例”框中輸入:{^2001-05-01}。步驟5:“排序依據(jù)”選項(xiàng)卡中雙擊“選定字段”列表框中的“Orders.簽訂日期”字段添加到“排序條件”中,“排序選項(xiàng)”中選擇“降序”;雙擊“選定字段”中的“Orders.金額字段添加到“排序條件”中,“排序選項(xiàng)”中選擇“降序”單選項(xiàng)。步驟6:執(zhí)行【查詢】→【查詢?nèi)ハ颉坎藛蚊?,在彈出的“查詢?nèi)ハ颉睂?duì)話框中單擊“表”圖標(biāo)按鈕,接著在“表名”中輸入文件名tableone,單擊“確定”按鈕。步驟7:最后單擊“常用”工具欄中的“運(yùn)行”按鈕查看結(jié)果,將杳詢文件保存到考生文件夾下。知識(shí)點(diǎn)解析:暫無(wú)解析三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下,打開資源數(shù)據(jù)庫(kù)frdb,完成如下綜合應(yīng)用:設(shè)計(jì)一個(gè)表單控件名為form、表單文件名為frshow、表單標(biāo)題名為“農(nóng)戶資源數(shù)據(jù)瀏覽”的表單,其表單界面如圖3.16所示。其他要求如下:①為表單建立數(shù)據(jù)環(huán)境,向數(shù)據(jù)環(huán)境依次添加frt表(Cursor1)、pt表(Cursor2)和treet表(Cursor3)。②當(dāng)在“戶主編號(hào)”(Labell)標(biāo)簽右邊的文本框(Textl)中輸入戶主編號(hào)并單擊“查詢”(Commandl)按鈕時(shí),將在右邊的表格控件(Gridl)內(nèi)顯示該農(nóng)戶承包的土地編號(hào)、小地名、面積、樹種編號(hào)、蓄積和承包年度信息(均取自frt表),并在左邊相應(yīng)的文本框中顯示該農(nóng)戶的姓名(Text2)、年齡(Text3)、性別(Text4)和家庭地址(Text5)(均取自pt表)。③單擊“退出”(Command2)按鈕時(shí),關(guān)閉表單。要求:表格(Grid1)控件的RecordSourceType屬性設(shè)置為“4一SQL說(shuō)明”;使用SQL的SELECT語(yǔ)句將根據(jù)輸入的戶主編號(hào)查詢到的姓名、年齡、性別和家庭地址數(shù)據(jù)存放到一維數(shù)組tmp中,并將tnap數(shù)組諸元素的值賦值到各文本框。標(biāo)準(zhǔn)答案:【操作步驟】步驟1:命令窗口執(zhí)行:OPENDATABASEfrdb,打開frdb數(shù)據(jù)庫(kù)。步驟2:命令窗口執(zhí)行:CREATEFORMfrshow,打開表單設(shè)計(jì)器新建表單。步驟3:右擊表單選擇【數(shù)據(jù)環(huán)境】快捷菜單命令,繼續(xù)在表單數(shù)據(jù)環(huán)境中單擊右鍵選擇【添加】快捷菜單命令,在“添加表或視圖”對(duì)話框中依次雙擊frt表、pt表和treet表,將其添加到數(shù)據(jù)環(huán)境中。步驟4:向表單添加五個(gè)標(biāo)簽、五個(gè)文本框、一個(gè)表格和兩個(gè)命令按鈕。選擇表單對(duì)象,修改對(duì)象屬性值,見表4.19。步驟5:編寫各個(gè)命令按鈕的C1ick事件代碼如下:*****“查詢”按鈕的C1ick事件代碼*****THISFORM.GRIDI.RECORDSOURCE=”;sELEcT土地編號(hào),小地名,面積,樹種編號(hào),蓄積,承包年度FROMFRT;WHERE戶主編號(hào)=ALLTRIM(THISFORM.TEXT1.VALUE);INTOCURSORTEMP”sELECT姓名,年齡,性別,家庭地址FROMP_T;WHERE戶主編號(hào)=ALLTRIM(THISFORM.TEXTl.VALUE);INTOARRAYTMPTHISFORM.TEXT2.VALUE=TMP(1)THISFORM.TEXT3.VALUE=TMP(2)THISFORM.TEXT4.VALUE=TMP(3)THISFORM.TEXT5.VALUE=TMP(4)*****“退出”按鈕的Click事件代碼*****THISFORM.RELEASE步驟6:?jiǎn)螕簟俺S谩惫ぞ邫谥小斑\(yùn)行”按鈕運(yùn)行表單。知識(shí)點(diǎn)解析:暫無(wú)解析國(guó)家二級(jí)VF機(jī)試(操作題)模擬試卷第6套一、基本操作題(本題共1題,每題1.0分,共1分。)1、在考生文件夾下完成如下操作:(1)在orders表中添加一條記錄,其中訂單號(hào)為“0050”、客戶號(hào)為“061002”、簽訂日期為2010年10月10日。(2)將orders表中訂單號(hào)為“0025”的訂單的簽訂日期改為2010年10月10日。(3)為orders表添加一個(gè)“金額”字段(貨幣類型)。(4)使用SQLDELETE語(yǔ)句從orderitems表中刪除訂單號(hào)為“0032”且商品號(hào)為“C1003”的記錄。然后將該語(yǔ)句保存在命令文件sfour.prg中。標(biāo)準(zhǔn)答案:(1)①在命令窗口輸入命令打開表:useorders.dbfexclusive。②單擊“顯示”菜單下的“瀏覽”子菜單,瀏覽數(shù)據(jù)表,如圖4—56所示。③單擊“顯示”菜單下的“追加方式”子菜單,添加記錄,如圖4—57所示。(2)單擊“顯示”菜單下的“編輯”子菜單,找到訂單號(hào)為0025的記錄,修改日期,如圖4—58所示。(3)單擊“顯示”菜單下的“表設(shè)計(jì)器”子菜單,打開表設(shè)計(jì)器。②單擊“插入”按鈕添加字段,在“字段名”列文本框中輸入“金額”,類型選擇“貨幣型”。③單擊“確定”按鈕完成表的修改。(4)①選擇“文件”下的“新建”子菜單,彈出“新建”對(duì)話框,文件類型選擇“程序”。②單擊“新建文件”圖標(biāo)按鈕,打開程序編輯界面,輸入程序:deletefromorderitemswhere訂單號(hào)="0032"and商品號(hào)="C1003"③單擊菜單工具欄里面的“保存”按鈕,彈出“另存為”對(duì)話框,輸入程序名:sfour.prg,保存到考生文件夾下。④執(zhí)行該程序。數(shù)據(jù)表的操作、程序的設(shè)計(jì)和使用。知識(shí)點(diǎn)解析:本大題考查了數(shù)據(jù)表的基本操作,包括添加記錄、修改記錄、增加字段等,可以通過(guò)SQL語(yǔ)句實(shí)現(xiàn),也可以直接通過(guò)菜單操作。題目要求刪除數(shù)據(jù)表中的訂單號(hào)為“0032”且商品號(hào)為“C1003”的記錄,因此SQL語(yǔ)句的篩選條件為:where訂單號(hào)="0032"and商品號(hào)="Cl003"。二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)使用SELECT語(yǔ)句查詢2008年2月份沒(méi)有訂單的客戶,查詢結(jié)果依次包含客戶號(hào)、姓名、性別和聯(lián)系電話四項(xiàng)內(nèi)容,各記錄按客戶號(hào)降序排序,查詢結(jié)果存放在表tableone中。最后將該語(yǔ)句保存在命令文件sfive.prg中。注:customers是客戶表,orders是訂單表。(2)首先創(chuàng)建數(shù)據(jù)庫(kù)goods_m,并向其中添加goods表。然后在數(shù)據(jù)庫(kù)中創(chuàng)建視圖viewone。利用該視圖只能查詢單價(jià)大于等于2000且?guī)齑媪啃∮诘扔?、或者單價(jià)小于2000且?guī)齑媪啃∮诘扔?的商品信息,查詢結(jié)果依次包含商品號(hào)、商品名、單價(jià)和庫(kù)存量四項(xiàng)內(nèi)容,各記錄按單價(jià)降序排序、單價(jià)相同按庫(kù)存量升序排序。最后利用該視圖查詢視圖中的全部信息,并將查詢結(jié)果存放在表tabletwo中。標(biāo)準(zhǔn)答案:(1)步驟1:選擇“文件”下的“新建”子菜單,彈出“新建”對(duì)話框,文件類型選擇“程序”。步驟2:?jiǎn)螕簟靶陆ㄎ募眻D標(biāo)按鈕,打開程序編輯界面,輸入如下程序:select客戶號(hào),姓名,性別,聯(lián)系電話fromcustomerswherenotexists(select*fromorderswhereyear(簽訂日期)=2008andmonth(簽訂日期)=2and客戶號(hào)=customers.客戶號(hào))orderby客戶號(hào)descintotabletableone步驟3:?jiǎn)螕舨藛喂ぞ邫诶锩娴摹氨4妗卑粹o,彈出“另存為”對(duì)話框,輸入程序名:sfive.prg,保存到考生文件夾下。步驟4:執(zhí)行該程序。程序設(shè)計(jì)和SQL的使用。(2)步驟1:創(chuàng)建數(shù)據(jù)庫(kù)可以使用“文件”菜單完成,選擇“文件”菜單下面的“新建”子菜單,彈出“新建”對(duì)話框,文件類型選擇“數(shù)據(jù)庫(kù)”。步驟2:?jiǎn)螕簟靶陆ㄎ募眻D標(biāo)按鈕,彈出“創(chuàng)建”對(duì)話框,輸入數(shù)據(jù)庫(kù)文件名:goods_m.dbc,保存在考生文件夾下。步驟3:在數(shù)據(jù)庫(kù)設(shè)計(jì)器中,單擊數(shù)據(jù)庫(kù)設(shè)計(jì)器工具欄中的“添加表”按鈕,彈出“打開”對(duì)話框,添加goods表,如圖4—59所示。步驟4:再通過(guò)工具欄里面的“新建”命令,彈出“新建”對(duì)話框,文件類型選擇“視圖”。步驟5:?jiǎn)螕簟靶陆ㄎ募眻D標(biāo)按鈕,彈出“創(chuàng)建”對(duì)話框,彈出“添加表或視圖”對(duì)話框,把goods_m數(shù)據(jù)庫(kù)中的goods表添加到視圖中。步驟6:開視圖設(shè)計(jì)器,在“字段”選項(xiàng)卡中選擇商品號(hào)、商品名、單價(jià)和庫(kù)存量4個(gè)字段添加到選定字段,如圖4—60所示。步驟7:切換到“篩選”選項(xiàng)卡,在其中進(jìn)行如下設(shè)置,單價(jià)大于等于2000且?guī)齑媪啃∮诘扔?、或者單價(jià)小于2000且?guī)齑媪啃∮诘扔?。步驟8:切換到“排序依據(jù)”選項(xiàng)卡,選擇字段"Goods.單價(jià)",在“排序選項(xiàng)”處選擇“降序”;選擇字段"Goods.庫(kù)存量",在“排序選項(xiàng)”處選擇“升序”。步驟9:?jiǎn)螕艄ぞ邫诘摹氨4妗卑粹o,彈出“保存”對(duì)話框,輸入視圖文件名viewone,保存在考生文件夾下。步驟10:選擇“文件”菜單下面的“新建”子菜單,彈出“新建”對(duì)話框,文件類型選擇“查詢”。步驟11:?jiǎn)螕簟靶陆ㄎ募眻D標(biāo)按鈕,彈出“添加表或視圖”對(duì)話框,“選定”選擇視圖,然后選擇viewone視圖,然后單擊“添加”按鈕完成視圖的添加,單擊“關(guān)閉”按鈕關(guān)閉該對(duì)話框。步驟11:在查詢?cè)O(shè)計(jì)器里面,選擇“字段”選項(xiàng)卡,把所有字段添加到“選定字段”。步驟12:?jiǎn)螕舨樵冊(cè)O(shè)計(jì)器工具欄里面的“查詢?nèi)ハ颉卑粹o,彈出“查詢?nèi)ハ颉睂?duì)話框,設(shè)置查詢?nèi)ハ驗(yàn)楸恚斎氡砻Q為tabletwo,如圖4—61所示。步驟13:運(yùn)行查詢。視圖和查詢的建立與使用。知識(shí)點(diǎn)解析:(1)本題考查SQL的使用。題目要求查詢2008年2月份沒(méi)有訂單的客戶,查詢結(jié)果依次包含客戶號(hào)、姓名、性別和聯(lián)系電話四項(xiàng)內(nèi)容,各記錄按客戶號(hào)降序排序,查詢結(jié)果存放在表tableone中,因此篩選條件為2008年2月沒(méi)有訂單,需要使用嵌入查詢條件:wherenotexists(select*fromorderswhereyear(簽訂日期)=2008andmonth(簽訂日期)=2。(2)數(shù)據(jù)庫(kù)的建立、視圖的設(shè)計(jì)和使用。題目要求在視圖里面查詢單價(jià)大于等于2000且?guī)齑媪啃∮诘扔?、或者單價(jià)小于2000且?guī)齑媪啃∮诘扔?的商品信息,查詢結(jié)果依次包含商品號(hào)、商品名、單價(jià)和庫(kù)存量四項(xiàng)內(nèi)容,各記錄按單價(jià)降序排序、單價(jià)相同的按庫(kù)存量升序排序,因此需要在視圖里面設(shè)置篩選條件、排序依據(jù)和字段。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下創(chuàng)建一個(gè)頂層表單myform.scx(表單的標(biāo)題為“考試”),然后創(chuàng)建并在表單中添加菜單(菜單的名稱為mymenu.mnx,菜單程序的名稱為mymenu.mpr)。效果如圖3-8所示。(1)菜單命令“統(tǒng)計(jì)”和“退出”的功能都通過(guò)執(zhí)行過(guò)程完成。(2)菜單命令“統(tǒng)計(jì)”的功能是從customers表中統(tǒng)計(jì)各年份出生的客戶人數(shù)。統(tǒng)計(jì)結(jié)果包含“年份”和“人數(shù)”兩個(gè)字段,各記錄按年份升序排序,統(tǒng)計(jì)結(jié)果存放在tablethree表中。(3)菜單命令“退出”的功能是釋放并關(guān)閉表單(在過(guò)程中包含命令myform.release)。(4)請(qǐng)運(yùn)行表單并依次執(zhí)行其中的“統(tǒng)計(jì)”和“退出”菜單命令。標(biāo)準(zhǔn)答案:步驟1:建立表單可通過(guò)“文件”菜單下的“新建”子菜單命令打開“新建”對(duì)話框,文件類型選擇“表單”,單擊“新建文件”圖標(biāo)按鈕,打開表單設(shè)計(jì)器。步驟2:通過(guò)屬性窗口修改表單的Caption屬性值,將其設(shè)置為“考試”。步驟3:?jiǎn)螕舨藛喂ぞ邫诶锩娴摹氨4妗卑粹o,彈出“另存為”對(duì)話框,輸入表單文件名:myform.scx,保存在考生文件夾下。步驟4:建立菜單可通過(guò)“文件”菜單下的“新建”子菜單命令打開“新建”對(duì)話框,文件類型選擇“菜單”,單擊“新建文件”圖標(biāo)按鈕,彈出“菜單”對(duì)話框,選擇“菜單”打開表單設(shè)計(jì)器。步驟5:在菜單設(shè)計(jì)器中建立各菜單項(xiàng),菜單名稱分別為:計(jì)算和退出。在“計(jì)算”菜單的結(jié)果列中選擇“過(guò)程”,在“

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論