計(jì)算機(jī)等級(jí)考試二級(jí)VFP機(jī)試試題31

字號(hào):

第三十一套
    一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分)
    在考生文件夾下的數(shù)據(jù)庫rate中完成下列操作:
     1. 將自由表rate_exchange和currency_sl添加到rate數(shù)據(jù)庫中。
     2. 為表 rate_exchange建立一個(gè)主索引,為表currency_sl建立一個(gè)普通索引
     (升序), 兩個(gè)索引的索引名和索引表達(dá)式均為"外幣代碼"。
     3. 為表 currency_sl設(shè)定有效性規(guī)則:"持有數(shù)量<>0",錯(cuò)誤提示信息是
     "持有數(shù)量不能為0"。
     4. 打開表單文件test_form,該表單的界面如下圖所示,請(qǐng)修改"登錄"命令按鈕
     的有關(guān)屬性,使其在運(yùn)行時(shí)可以使用。
    本題主要考核點(diǎn):
    將一個(gè)自由表添加到數(shù)據(jù)庫中、表索引的建立、字段有效規(guī)則的建立等知識(shí)點(diǎn)
    本題解題思路:
    第一步:打開考生文件夾下的"rate"數(shù)據(jù)庫。
    第二步:打開數(shù)據(jù)庫菜單選擇"添加表(A)",在彈出的"打開"對(duì)話框中,選定考生文件夾下rate_exchange 表,再點(diǎn)擊"確定"即可,這樣表rate_exchange就添加到了"rate"數(shù)據(jù)庫中,用同樣的方法,將currency_sl表也添加到 "rate"數(shù)據(jù)庫中。
    第三步:在數(shù)據(jù)庫設(shè)計(jì)器中選中表rate_exchange,在主菜單中選擇"修改(Y)",彈出表設(shè)計(jì)器,選擇表設(shè)計(jì)器"索引"標(biāo)簽,在索引名列中填入"外幣代碼",在索引類型列中選擇"主索引",在索引表達(dá)式列中填入"外幣代碼",點(diǎn)擊"確定"按鈕,保存表結(jié)構(gòu),用類似的方法,為currency_sl表建立普通索引。
    第四步:在表設(shè)計(jì)器中首先選中要定義有效性規(guī)則的字段"持有數(shù)量",在"規(guī)則"一欄中輸入"持有數(shù)量<>0"(或用表達(dá)式生成器生成),在"信息"欄中輸入:"持有數(shù)量不能為0"。
    第五步:打開考生文件夾下的"test_form"表單,右擊"登錄"命令按鈕,選擇"屬性(P)",在彈出的"屬性"對(duì)話框中將"登錄"命令按鈕的"Enable"值置為.T.,接著保存表單即可。
    二、簡單應(yīng)用(2小題,每題20分,計(jì)40分)
    在考生文件夾下完成如下簡單應(yīng)用:
     1. 用SQL語句完成下列操作:列出"林詩因"持有的所有外幣名稱(取自
    rate_exchange表)和持有數(shù)量(取自currency_sl表),并將檢索結(jié)果按持
    有數(shù)量升序排序存儲(chǔ)于表rate_temp中,同時(shí)將你所使用的SQL語句存儲(chǔ)于新
    建的文本文件rate.txt中。
     2. 使用一對(duì)多報(bào)表向?qū)Ы?bào)表。要求:父表為rate_exchange,子表為
    currency_sl ,從父表中選擇字段:"外幣名稱";從子表中選擇全部字段;兩
    個(gè)表通過"外幣代碼"建立聯(lián)系;按"外幣代碼"降序排序;報(bào)表樣式為"經(jīng)營式",
    方向?yàn)?橫向",報(bào)表標(biāo)題為:"外幣持有情況";生成的報(bào)表文件名為
    currency_report。
    本題主要考核點(diǎn):
     SQL語句的查詢、使用報(bào)表向?qū)е谱鲌?bào)表等知識(shí)點(diǎn)
    本題解題思路:
    第1題,本題的主要考核點(diǎn)是SQL語句的查詢。
    SELECT Rate_exchange.外幣名稱, Currency_sl.持有數(shù)量;
     FROM currency_sl INNER JOIN rate_exchange ;
     ON Currency_sl.外幣代碼 = Rate_exchange.外幣代碼;
     WHERE Currency_sl.姓名 = "林詩因";
     ORDER BY Currency_sl.持有數(shù)量;
     INTO TABLE rate_temp.dbf
    第2題,本題的主要考核點(diǎn)是使用報(bào)表向?qū)е谱鲌?bào)表。
    啟動(dòng)報(bào)表向?qū)Э稍?文件"菜單中選擇"新建"或者單擊工具欄上的"新建"按鈕,打開"新建"對(duì)話框,文件類型選擇報(bào)表,單擊向?qū)О粹o?;蛘咴?工具"菜單中選擇"向?qū)?子菜單,選擇"報(bào)表",或直接單擊工具欄上的"報(bào)表向?qū)?圖標(biāo)按鈕。然后按照向?qū)崾静僮骷纯伞?BR>    三、綜合應(yīng)用(1小題,計(jì)30分)
     設(shè)計(jì)一個(gè)表單名和文件名均為currency_form的表單,所有控件的屬性必
    須在表單設(shè)計(jì)器的屬性窗口中設(shè)置。表單的標(biāo)題為:"外幣市值情況"。表單中
    有兩個(gè)文本框(text1和text2)和兩個(gè)命令按鈕"查詢"(command1)和"退出"
    (command2)。
     運(yùn)行表單時(shí),在文本框text1中輸入某人的姓名,然后單擊"查詢",則text2
    中會(huì)顯示出他所持有的全部外幣相當(dāng)于人民幣的價(jià)值數(shù)量。注意:某種外幣相當(dāng)
    于人民幣數(shù)量的計(jì)算公式:人民幣價(jià)值數(shù)量=該種外幣的"現(xiàn)鈔買入價(jià)"* 該種外幣
    "持有數(shù)量"。
    單擊"退出"按鈕時(shí)關(guān)閉表單。
    本題主要考核點(diǎn)
     控件的屬性的修改、如何用SQL語句進(jìn)行記錄的更新、表單的退出等知識(shí)點(diǎn)
    本題解題思路:
    第一步:在Visual FoxPro主窗口中按下組合鍵Ctrl+N,系統(tǒng)彈出"新建"對(duì)話框,在文件類型中選擇"表單",點(diǎn)擊"新建文件"按鈕
    第二步:系統(tǒng)打開表單設(shè)計(jì)器;點(diǎn)擊工具欄按鈕"表單控件工具欄",在彈出的"表單控件"中,選中"文本框",在表單設(shè)計(jì)器中拖動(dòng)鼠標(biāo),這樣在表單上得到一個(gè)"文本框"控件text1,用同樣的方法再加入一個(gè)"文本框"控件text2;點(diǎn)擊工具欄按鈕"表單控件工具欄",在彈出的"表單控件"中,選中"命令按鈕",在表單設(shè)計(jì)器中拖動(dòng)鼠標(biāo),這樣在表單上得到一個(gè)"命令按鈕"對(duì)象command1,設(shè)置它的caption屬性為"查詢",雙擊command1在打開的代碼編輯器窗口中輸入以下代碼:
    SELECT Rate_exchange.現(xiàn)鈔買入價(jià) * Currency_sl.持有數(shù)量;
    FROM Currency_sl INNER JOIN Rate_exchange;
    ON Currency_sl.外幣代碼 = Rate_exchange.外幣代碼;
    WHERE Currency_sl.姓名 = ALLTRIM(THISFORM.text1.VALUE);
    GROUP BY Currency_sl.姓名;
    INTO ARRAY sl
    THISFORM.text2.VALUE=sl
    用同樣的方法,在表單上放置command2對(duì)象,它的Click的事件代碼為:THISFORM.RELEASE。
    第三步:以文件名currency_form保存表單,并且保存在考生文件夾下。