計算機等級考試二級VFP機試試題24

字號:

第二十四套
    一、基本操作題(共四小題,第1和2題是7分、第3和4題是8分)
     在考生文件夾下完成如下操作:
     1. 打開項目文件salary_p,將考生文件夾下的數(shù)據(jù)庫salarydb添加到該項目
     中。
     2. 在salary_db數(shù)據(jù)庫中為dept表創(chuàng)建一個主索引(升序),索引名和索引表
     達式均是 "部門號";為 salarys表創(chuàng)建一個普通索引(升序),索引名和
     索引表達式均是"部門號", 再創(chuàng)建一個主索引 (升序)、索引名和索引表
     達式均是"雇員號"。
     3. 通過"部門號"字段建立salarys表和dept表間的永久聯(lián)系。
     4. 為以上建立的聯(lián)系設(shè)置參照完整性約束:更新規(guī)則為"限制";刪除規(guī)則為"
     級聯(lián)";插入規(guī)則為"限制"。
    本題主要考核點:
     索引的建立、建立兩表之間的永久聯(lián)系、編輯參照完整性、將數(shù)據(jù)庫加入到項目中等知識點
    解題思路:
    第一步:打開考生文件夾下的項目salary_p
    第二步:在項目salary_p的項目管理器中,先選擇"數(shù)據(jù)"標簽,再選擇"數(shù)據(jù)庫",點擊"添加"按鈕,在彈出的"打開"對話框中選擇考生文件夾下的"salarydb.dbc",點擊"確定"按鈕,數(shù)據(jù)庫便添加到項目之中
    第三步:在項目管理器中選中表"dept",點擊"修改",彈出"表設(shè)計器",選擇"索引"標簽,在"索引名"列和"索引表達式"列中分別輸入"部門號",在"類型"列中選擇"主索引",排序的為升序,點擊"確定"按鈕,保存修改。用同樣的方法為salarys表建立所要求的普通索引和主索引
    第四步:在項目管理器中選中數(shù)據(jù)庫"salarydb",點擊"修改"按鈕,打開"數(shù)據(jù)庫設(shè)計器"。在表dept的索引"部門號"上按下鼠標左鍵,并拖動鼠標,在salarys的索引"部門號"上松開鼠標,這樣兩個有之間便建立了永久聯(lián)系。
    第五步:在數(shù)據(jù)庫設(shè)計器中,單擊dept表和salarys表之間的"連線",并選擇主菜單"數(shù)據(jù)庫"下的"編輯參照完整性",打開"參照完整性生成器"對話框,在三個選項卡上分別選擇正確定的規(guī)則。點擊"確定"退出
    第六步:保存數(shù)據(jù)庫的修改。
    二、簡單應(yīng)用(2小題,每題20分,計40分)
     在考生文件夾下完成如下簡單應(yīng)用:
     1. 創(chuàng)建一個名稱為sview的視圖,該視圖的SELECT語句查詢salarydb數(shù)據(jù)庫
     中salarys表(雇員工資表)的部門號、雇員號、姓名、工資、補貼、獎勵、
     失業(yè)保險、醫(yī)療統(tǒng)籌和實發(fā)工資,其中實發(fā)工資由工資、補貼和獎勵三項
     相加,然后再減去失業(yè)保險和醫(yī)療統(tǒng)籌得出,結(jié)果按"部門號"降序排序,
     最后將定義視圖的命令代碼存放到命令文件T1.PRG中并執(zhí)行該程序。
     2.設(shè)計一個名稱為form1的表單,表單以表格方式(與BROWSE窗口方式相似,
     表格名稱為grdSalarys)顯示salarydb數(shù)據(jù)庫中salarys表的記錄,供用
     戶瀏覽。在該表單的右下方有一個命令按鈕,名稱為 Command1,標題為"
     退出瀏覽",當單擊該按鈕時退出表單。
    本題主要考核點:
     視圖的建立方法、程序的建立方法、查詢語句的應(yīng)用、表單的建立方法等知識點
    解題思路:
    第一小題:打開考生文件夾下項目"Salary_p.pjx",在命令窗口中輸入下列命令來建立sview視圖:
    CREATE VIEW SVIEW AS SELECT 部門號,雇員號,姓名,工資,補貼,獎勵,失業(yè)保險,醫(yī)療統(tǒng)籌,;
    工資+補貼+獎勵-失業(yè)保險-醫(yī)療統(tǒng)籌 AS 實發(fā)工資;
    FROM SALARYS ORDER BY 部門號 DESC
    下面來建立T1.prg程序,在項目Salary_p的項目管理器中,選擇"代碼"標簽,再選擇"程序",點擊"新建 (N)"按鈕,在打開的代碼編輯窗口中輸入sview視圖的查詢代碼,即:CREATE VIEW SVIEW AS SELECT 部門號,雇員號,姓名,工資,補貼,獎勵,失業(yè)保險,醫(yī)療統(tǒng)籌,;
    工資+補貼+獎勵-失業(yè)保險-醫(yī)療統(tǒng)籌 AS 實發(fā)工資;
    FROM SALARYS ORDER BY 部門號 DESC
    選擇工具欄的保存按鈕,以文件名T1.prg保存在考生文件夾下.
    第二小題:在項目salary_p的項目管理器中,選擇"文檔"標簽,再選擇"表單,然后點擊"新建"按鈕,在彈出的" 新建表單"對話框中點擊"新建表單",彈出"表單設(shè)計器"。在表單設(shè)計器中放置一個網(wǎng)格控件和一個命令按鈕控件。將網(wǎng)格控件的name屬性改為: GrdSalarys.點擊工具欄中的"數(shù)據(jù)環(huán)境"按鈕,在彈出的"添加表或視圖"對話框中選擇salary_db數(shù)據(jù)庫下的salarys表.點擊"添加"按鈕,然后點擊"關(guān)閉"按鈕。在表單設(shè)計器中對GrdSalarys網(wǎng)格控件的RecordSourceType和RecordSource屬性分別設(shè)為:表和salarys;設(shè)置命令按鈕的Caption屬性為:退出瀏覽,并為它的Click事件編寫代碼:THISFORM.RELEASE;以文件名form1.scx將所編輯的表單保存在考生文件夾下。
    三、綜合應(yīng)用(1小題,計30分)
     在考生文件夾下,對數(shù)據(jù)庫salary_db完成如下綜合應(yīng)用:
     設(shè)計一個名稱為form2的表單,在表單上設(shè)計一個"選項組"(又稱選項按鈕組,
     名稱為Optiongroup1) 及兩個命令按鈕"生成"(名稱為Command1)和"退出"(名
     稱為Command2);其中選項按鈕組有"雇員工資表" (名稱為Option1)、"部門
     表"(名稱為Option2)和"部門工資匯總表"(名稱為Option3)三個選項按鈕。然
     后為表單建立數(shù)據(jù)環(huán)境, 并向數(shù)據(jù)環(huán)境添加dept表(名稱為Cursor1)和salarys
     表(名稱為Cursor2)。
     各選項按鈕功能如下:
     (1) 當用戶選擇"雇員工資表"選項按鈕后,再按"生成"命令按鈕, 查詢顯示在
     簡單應(yīng)用中創(chuàng)建的sview視圖中的所有信息并把結(jié)果存入表gz1.dbf中。
     (2) 當用戶選擇"部門表"選項按鈕后,再按"生成"命令按鈕,查詢顯示dept
     表中每個部門的部門號和部門名稱并把結(jié)果存入表bm1.dbf中。
     (3) 當用戶選擇"部門工資匯總表"選項按鈕后,再按"生成"命令按鈕,則按
     部門匯總, 將該公司的部門號、部門名、工資、補貼、獎勵、失業(yè)保險
     和醫(yī)療統(tǒng)籌的支出匯總合計結(jié)果存入表hz1.dbf 中。并按部門號的升序
     排序。請注意:字段名必須與原字段名一致。
     (4) 按"退出"按鈕,退出表單。
     注意:以上各項功能必須調(diào)試、運行通過。
    本題主要考核點:
     表單的建立方法、數(shù)據(jù)環(huán)境、條件結(jié)構(gòu)的用法、查詢語句等知識點
    解題思路:
    第一步:打開考生文件夾下的項目salary_p
    第二步:在項目salary_p的項目管理器中選擇"文檔"標簽,再選擇"表單",點擊"新建"按鈕,在彈出的"新建表單"對話框中點擊"新建表單"按鈕打開表單設(shè)計器
    第三步:按要求在表單上建立各個控件,并設(shè)置其屬性為題面所要求的屬性值
    第四步:點擊工具欄按鈕中的"數(shù)據(jù)環(huán)境"按鈕,將Salary_db中的表dept和salarys表依次添加到數(shù)據(jù)環(huán)境之中。
    第五步:為"生成"按鈕控件添加如下的Click事件響應(yīng)代碼:
    DO CASE
     CASE THISFORM.OPTIONGROUP1.VALUE=1
     USE SVIEW
     BROW
     SELECT * FROM SVIEW INTO TABLE GZ1.DBF
     CASE THISFORM.OPTIONGROUP1.VALUE=2
     USE DEPT
     BROW
     SELECT * FROM DEPT INTO TABLE BM1.DBF
     CASE THISFORM.OPTIONGROUP1.VALUE=3
     SELECT DEPT.部門號,dept.部門名,;
     SUM(工資) AS 工資,SUM(補貼) AS 補貼,SUM(獎勵) AS 獎勵 ,;
     SUM(失業(yè)保險) AS 失業(yè)保險,SUM(醫(yī)療統(tǒng)籌) AS 醫(yī)療統(tǒng)籌;
     FROM DEPT,SALARYS;
     WHERE DEPT. 部門號=SALARYS. 部門號;
     GROUP BY DEPT. 部門號;
     ORDER BY DEPT. 部門號;
     INTO TABLE HZ1.DBF
    ENDCASE
     第六步:為標題為"退出"的命令按鈕添加Click事件的響應(yīng)代碼:
    THISFORM.RELEASE
    第七步:以文件名form2.scx保存表單,保存在考生文件夾下。并運行表單。