47
一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分)
在考生文件夾下完成下列操作:
1. 用命令新建一個(gè)名為"外匯"的數(shù)據(jù)庫,并將該命令存儲(chǔ)于one.txt中;
2. 將自由表"外匯匯率"、"外匯賬戶"、"外匯代碼"加入到新建的"外匯"數(shù)據(jù)庫
中;
3. 用SQL語句新建一個(gè)表rate,其中包含4個(gè)字段"幣種1代碼" C(2)、
"幣種2代碼"C(2)、"買入價(jià)"N(8,4)、"賣出價(jià)"N(8,4),請(qǐng)將SQL語句
存儲(chǔ)于two.txt中。
4. 表單文件test_form中有一個(gè)名為form1的表單(如圖),請(qǐng)將編輯框控件
Edit1的滾動(dòng)條去掉。
本題的主要考核點(diǎn):
SQL語句的使用、將自由表添加到數(shù)據(jù)庫中、表單屬性設(shè)置等。
解題思路:
1.SQL語句的用法(建立數(shù)據(jù)庫)
CREATE DATABASE 外匯
2.將自由表添加到數(shù)據(jù)庫中,可以在項(xiàng)目管理器或數(shù)據(jù)庫設(shè)計(jì)器中完成。打開數(shù)據(jù)庫設(shè)計(jì)器,在"數(shù)據(jù)庫"菜單中或在數(shù)據(jù)庫設(shè)計(jì)器上單擊右鍵彈出的菜單中選擇"添加表",然后在"打開"對(duì)話框中選擇要添加到當(dāng)前數(shù)據(jù)庫的自由表。還可用ADD TABLE命令添加一個(gè)自由表到當(dāng)前數(shù)據(jù)庫中。
3.SQL語句的用法(建立表結(jié)構(gòu))
CREATE TABLE rate (幣種1代碼 C(2),幣種2代碼 C(2),買入價(jià) N(8,4),賣出價(jià) N(8,4))
4.修改表單控件的屬性值:編輯框控件的ScrollBars屬性決定編輯框是否有垂直滾動(dòng)條。
二、簡(jiǎn)單應(yīng)用(2小題,每題20分,計(jì)40分)
在考生文件夾下完成如下簡(jiǎn)單應(yīng)用:
1. 編寫程序three.prg完成下列操作:根據(jù)"外匯匯率"表中的數(shù)據(jù)產(chǎn)生rate
自由表中的數(shù)據(jù)。
要求:將所有"外匯匯率"表中的數(shù)據(jù)插入rate表中并且順序不變,由于
"外匯匯率"中的幣種1和幣種2存放的是外幣名稱,而rate表中的幣種1代碼和幣種
2代碼應(yīng)該存放外幣代碼,所以插入時(shí)要做相應(yīng)的改動(dòng),外幣名稱與外幣代碼的對(duì)
應(yīng)關(guān)系存儲(chǔ)在"外匯代碼"表中。
注意:程序必須執(zhí)行一次,保證rate表中有正確的結(jié)果。
2. 使用查詢?cè)O(shè)計(jì)器建立一個(gè)查詢文件four.qpr。查詢要求:外匯帳戶中有
多少日元和歐元。查詢結(jié)果包括了外幣名稱、鈔匯標(biāo)志、金額,結(jié)果按外幣名
稱升序排序,在外幣名稱相同的情況下按金額降序排序,并將查詢結(jié)果存儲(chǔ)于
表five.dbf 中。
第1題:本題的考查點(diǎn)是利用SQL_SELECT語句建立查詢程序。第一步:在Visual FoxPro主窗口中按下組合鍵Ctrl+N,系統(tǒng)彈出"新建"對(duì)話框,在文件類型中選擇"程序",點(diǎn)擊"新建文件"按鈕;
第二步:在彈出的代碼編輯器窗口中輸入以下代碼:
SELECT 外匯代碼.外幣代碼 AS 幣種1代碼,;
外匯代碼_a.外幣代碼 AS 幣種2代碼, 外匯匯率.買入價(jià), 外匯匯率.賣出價(jià);
FROM 外匯!外匯代碼 INNER JOIN 外匯!外匯匯率;
INNER JOIN 外匯!外匯代碼外匯代碼_a ;
ON 外匯匯率.幣種2 = 外匯代碼_a.外幣名稱 ;
ON 外匯代碼.外幣名稱 = 外匯匯率.幣種1;
INTO TABLE rate.dbf
第2題:本題的考查點(diǎn)是利用查詢?cè)O(shè)計(jì)器建立查詢。
建立查詢可以使用"文件"菜單完成,選擇文件--新建--查詢--新建文件,將"外匯代碼"和"外匯賬戶"表加入查詢中,從字段中選擇字段外匯代碼.外幣名稱、外匯賬戶.鈔匯標(biāo)志和外匯賬戶.金額;切換到篩選中輸入條件:
外幣代碼外幣名稱 = "日元" OR
外幣代碼外幣名稱 = "歐元";
切換到"排序依據(jù)"中選擇"外匯代碼.外幣名稱"字段按升序排序和"外匯賬戶.金額"字段按降序排序。單擊查詢菜單下的查詢?nèi)ハ?,選擇表,輸入表名five.dbf,最后運(yùn)行該查詢。
三、綜合應(yīng)用(1小題,計(jì)30分)
設(shè)計(jì)一個(gè)文件名和表單名均為myaccount的表單。表單的標(biāo)題為
"外匯持有情況"。表單中有一個(gè)選項(xiàng)按鈕組控件(myOption)、一個(gè)表格控件
(Grid1)以及兩個(gè)命令按鈕"查詢"(Command1)和"退出"(Command2)。其中,選項(xiàng)
按鈕組控件有兩個(gè)按鈕"現(xiàn)匯"(Option1)、"現(xiàn)鈔"(Option2)。
運(yùn)行表單時(shí),首先在選項(xiàng)組控件中選擇"現(xiàn)鈔"或"現(xiàn)匯",單擊"查詢"命令
按鈕后,根據(jù)選項(xiàng)組控件的選擇將"外匯賬戶"表的"現(xiàn)鈔"或"現(xiàn)匯"(根據(jù)鈔匯標(biāo)
志字段確定)的情況顯示在表格控件中。
單擊"退出"按鈕,關(guān)閉并釋放表單。
注:在表單設(shè)計(jì)器中將表格控件Grid1的數(shù)據(jù)源類型設(shè)置為"SQL說明"。
本題主要考核點(diǎn)
控件的屬性的修改、SQL語句運(yùn)用、表單的退出等知識(shí)點(diǎn)
本題解題思路:
第一步:在Visual FoxPro主窗口中按下組合鍵Ctrl+N,系統(tǒng)彈出"新建"對(duì)話框,在文件類型中選擇"表單",點(diǎn)擊"新建文件"按鈕(系統(tǒng)將打開表單設(shè)計(jì)器);或直接在命令窗口中輸入 crea form myrate。
第二步:點(diǎn)擊工具欄按鈕"表單控件工具欄",在彈出的"表單控件"對(duì)話框中,選中"選項(xiàng)組"控件,在表單設(shè)計(jì)器中拖動(dòng)鼠標(biāo),這樣在表單上得到一個(gè)"選項(xiàng)組"控件optiongroup1,用類似的方法為表單再加入兩個(gè)"命令按鈕"控件command1和command2。
相關(guān)控件的屬性值如下:
對(duì)象 屬性 屬性值
Form1 Caption 外匯持有情況
選項(xiàng)組 Name myOption
ButtonCount 2
MyOption.option1 Caption 現(xiàn)匯
MyOption.option2 Caption 現(xiàn)鈔
Command1 Caption 查詢
Command2 Caption 退出
***********命令按鈕command1(查詢)的Click事件代碼如下************
DO CASE
CASE THISFORM.myOption.VALUE=1
THISFORM.GRID1.RECORDSOURCE="SELECT 外幣代碼, 金額;
FROM 外匯賬戶;
WHERE 鈔匯標(biāo)志 = [現(xiàn)匯];
INTO CURSOR TEMP"
CASE THISFORM.myOption.VALUE=2
THISFORM.GRID1.RECORDSOURCE="SELECT 外幣代碼, 金額;
FROM 外匯賬戶;
WHERE 鈔匯標(biāo)志 = [現(xiàn)鈔];
INTO CURSOR TEMP"
ENDCASE
***********命令按鈕command2(退出)的Click事件代碼如下************
thisform.release

