二、基本操作題(共18分)
1、1.在考生文件夾下建立一個名為emp—bak的表,其結(jié)構(gòu)與employee表的結(jié)構(gòu)完全相同。
2.為employee表的“職員號”字段建立一個候選索引,索引名為empid,表達式為“職員號”。
3.使用報表向?qū)梢粋€名為employee.frx的報表文件,其中包括employee表的職員號、姓名、性別和職務(wù)4個字段,報表樣式為“簡報式”,按“職員號”升序排序,報表標題為“職員一覽表”。
4.建立一個名為one.pr9的命令文件,該文件包含一條運行(預覽)報表文件employee.frx的命令。
2、1.在考生文件夾下創(chuàng)建一個名為“訂單管理”的數(shù)據(jù)庫,將已有的employee、orders和customer三個表添加到該數(shù)據(jù)庫中。 2.為0rders表建立一個普通索引,索引名為IIf,索引表達式為“year(簽訂日期)”。 3.為employee表建立一個主索引,為0rders建立一個普通索引,索引名和索引表達式均為“職員號”。通過“職員號”為employee表和0rders表建立一個一對多的永久聯(lián)系。4.為上述建立的聯(lián)系設(shè)置參照完成性約束:更新規(guī)則為“限制”,刪除規(guī)則為“級聯(lián)”,插入規(guī)則為“限制”。
二、簡單應(yīng)用題(共24分) 3、1.打開考生文件夾下的數(shù)據(jù)庫文件“大學管理”,修改并執(zhí)行程序four.pr9。程序four.pr9的功能是: (1)建立一個“工資表”(各字段的類型和寬度與“教師表”的對應(yīng)字段相同),其中職工號為關(guān)鍵字。 (2)插入一條“職工號”、“姓名”和“工資”分別為“11020034”、“宣喧”和4500的記錄。 (3)將“教師表”中所有記錄的相應(yīng)字段插入“工資表”。 (4)將工資低于3000的職工工資增加10%。 (5)刪除姓名為“Thomas”的記錄。 注意:只能修改標有錯誤的語句行,不能修改其他語句,修改以后請執(zhí)行一次該程序,如果多次執(zhí)行,請將前一次執(zhí)行后生成的表文件刪除。 2.使用查詢設(shè)計器建立查詢teacher—q并執(zhí)行,查詢的數(shù)據(jù)來源是“教師表”和“學院表”,查詢的字段項包括“姓名”、“工資”和“系名”,查詢結(jié)果中只包括“工資”小于等于3000的記錄,查詢?nèi)ハ蚴潜韋ive,查詢結(jié)果先按“工資”降序排列,若“工資”相同再按“姓名”升序排列。
4、1.在考生文件夾下已有表單文件formone.scx,其中包含兩個標簽、一個組合框和一個文本框,如下圖所示。
按要求完成相應(yīng)的操作,使得當表單運行時,用戶能夠從組合框選擇職員。并且該職員所簽訂單的平均金額能自動顯示在文本框里。
(1)將orders表和employee表依次添加到該表單的數(shù)據(jù)環(huán)境中(不要修改兩個表對應(yīng)對象的各屬性值)。
(2)將組合框設(shè)置成“下拉列表框”,將employee表中的“姓名”字段作為下拉列表框條目的數(shù)據(jù)源。其中,組合框的RowSourceType屬性值應(yīng)設(shè)置為:6一字段。
(3)將Textl設(shè)置為只讀文本框。
(4)修改組合框的InteractiveChange事件代碼,當用戶從組合框選擇職員時,能夠?qū)⒃撀殕T所簽訂單平均金額自動顯示在文本框里。
2.利用查詢設(shè)計器創(chuàng)建查詢,從employee和orders表中查詢“組別”為1的組各職員所簽的所有訂單信息。查詢結(jié)果依次包含“訂單號”、“金額”和“簽訂者”3項內(nèi)容,其中“簽訂者”為簽訂訂單的職員姓名。按“金額”降序排列各記錄,查詢?nèi)ハ驗楸韙ableone。最后將查詢保存在queryone.qpr文件中,并運行該查詢。
三、綜合應(yīng)用題(共18分) 5、在考生文件夾下,先打開“賓館”數(shù)據(jù)庫,然后創(chuàng)建一個名為test的表單文件,如下圖所示。
該表單完成如下綜合應(yīng)用:
向表單中添加一個標簽(Labell)、一個文本框(Textl)和兩個命令按鈕。
標簽的標題為“退房日期大于或等于”。文本框用于輸入退房日期。
兩個命令按鈕的功能如下:
(1)“查詢”按鈕(Commandl):在該按鈕的Click事件代碼中,通過SQL的SELECT命令查詢退房日期大于或等于輸入日期的客戶的客戶號、身份證、姓名、工作單位和該客戶入住的客房號、類型名、價格信息,查詢結(jié)果按價格降序排列,并將查詢結(jié)果存儲到表TABD中。表TABD的字段為客戶號、身份證、姓名、工作單位、客房號、類型名和價格。
(2)“退出”按鈕(Command2)的功能是關(guān)閉并釋放表單。
表單設(shè)計完成后,運行該表單,查詢退房日期大于或等于2005—04—01的顧客信息。
6、(1)在考生文件夾下創(chuàng)建一個名為mymenu.mnx的下拉式菜單,運行該菜單程序時會在當前VisualFox_Pr0系統(tǒng)菜單的末尾追加一個“考試”子菜單,如下圖所示。
“統(tǒng)計”和“返回”菜單命令的功能都通過執(zhí)行“過程”完成。
菜單命令“統(tǒng)計”的功能是以某年某月為單位求訂單金額的和。統(tǒng)計結(jié)果包含“年份”、“月份”和“合計”3項內(nèi)容(若某年某月沒有訂單,則不應(yīng)包含記錄)。統(tǒng)計結(jié)果應(yīng)按年份降序排列,若年份相同再按月份升序排列,并存放在table-tw0表中。
“返回”菜單命令的功能是返回VisualFoxPr0的系統(tǒng)菜單。
(2)創(chuàng)建一個項目myprojeet.pjx,并將已經(jīng)創(chuàng)建的菜單
mymenu.mnx設(shè)置成主文件。然后連編生成應(yīng)用程序myproject.a(chǎn)pp。最后運行myproject.a(chǎn)pp,并依次執(zhí)行“統(tǒng)計”和“返回”菜單命令。
2、1.在考生文件夾下創(chuàng)建一個名為“訂單管理”的數(shù)據(jù)庫,將已有的employee、orders和customer三個表添加到該數(shù)據(jù)庫中。 2.為0rders表建立一個普通索引,索引名為IIf,索引表達式為“year(簽訂日期)”。 3.為employee表建立一個主索引,為0rders建立一個普通索引,索引名和索引表達式均為“職員號”。通過“職員號”為employee表和0rders表建立一個一對多的永久聯(lián)系。4.為上述建立的聯(lián)系設(shè)置參照完成性約束:更新規(guī)則為“限制”,刪除規(guī)則為“級聯(lián)”,插入規(guī)則為“限制”。
二、簡單應(yīng)用題(共24分) 3、1.打開考生文件夾下的數(shù)據(jù)庫文件“大學管理”,修改并執(zhí)行程序four.pr9。程序four.pr9的功能是: (1)建立一個“工資表”(各字段的類型和寬度與“教師表”的對應(yīng)字段相同),其中職工號為關(guān)鍵字。 (2)插入一條“職工號”、“姓名”和“工資”分別為“11020034”、“宣喧”和4500的記錄。 (3)將“教師表”中所有記錄的相應(yīng)字段插入“工資表”。 (4)將工資低于3000的職工工資增加10%。 (5)刪除姓名為“Thomas”的記錄。 注意:只能修改標有錯誤的語句行,不能修改其他語句,修改以后請執(zhí)行一次該程序,如果多次執(zhí)行,請將前一次執(zhí)行后生成的表文件刪除。 2.使用查詢設(shè)計器建立查詢teacher—q并執(zhí)行,查詢的數(shù)據(jù)來源是“教師表”和“學院表”,查詢的字段項包括“姓名”、“工資”和“系名”,查詢結(jié)果中只包括“工資”小于等于3000的記錄,查詢?nèi)ハ蚴潜韋ive,查詢結(jié)果先按“工資”降序排列,若“工資”相同再按“姓名”升序排列。
4、1.在考生文件夾下已有表單文件formone.scx,其中包含兩個標簽、一個組合框和一個文本框,如下圖所示。

三、綜合應(yīng)用題(共18分) 5、在考生文件夾下,先打開“賓館”數(shù)據(jù)庫,然后創(chuàng)建一個名為test的表單文件,如下圖所示。

6、(1)在考生文件夾下創(chuàng)建一個名為mymenu.mnx的下拉式菜單,運行該菜單程序時會在當前VisualFox_Pr0系統(tǒng)菜單的末尾追加一個“考試”子菜單,如下圖所示。
