>>>考試吧考后首發(fā)2013年3月計算機等考試題答案
一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分)
在考生目錄下完成如下操作:
1. 新建一個名為"學生"的數據庫。
2. 將"學生"、"選課"、"課程"三個自由表添加到新建的數據庫"學生"中。
3. 通過"學號"字段為"學生"表和"選課"表建立永久聯(lián)系。
4. 為上面建立的聯(lián)系設參照完整性約束:更新和刪除規(guī)則為"級聯(lián)",插入規(guī)則為"限制"。
解答:
方法1:菜單操作:單擊“文件”菜單,在“新建”對話框中選擇“數據庫”,在“創(chuàng)建”對話框輸入數據庫名稱“學生”。進入數據庫設計器后,在空白處單擊右鍵,在出現(xiàn)的快捷菜單中單擊“添加”,依次將"學生"、"選課"、"課程"三個自由表添加到新建的數據庫"學生"中,為表“學生”建立“學號”的主索引,為表“選課”建立“學號”的普通索引,拖動索引來建立永久關系,在進行“數據庫清理”后,用鼠標右鍵單擊關系線,在快捷菜單中單擊“編輯參照完整性”,在“參照完整性生成器”對話框中按要求設置參照完整性。
方法2:前兩條可用命令方法。
CREATE DATABASE 學生
OPEN DATABASE 學生
ADD TABLE 學生
ADD TABLE 選課
ADD TABLE 課程
二、簡單應用(2小題,每題20分,計40分)
在考生目錄下完成如下簡單應用:
1. 用SQL語句完成下列操作: 將選課在5門課程以上(包括5門)的學生的學號、姓名、平均分和選課門數按平均分降序排序,并將結果存放于數據庫表stu_temp(字段名為學號、姓名、平均分和選課門數)。
解答:
方法1:用查詢設計器。主要步驟說明如下:
字段選取時,除Student.學號, Student.姓名直接選取,其余的先在“函數和表達式”框中分別輸入avg(成績) as 平均分,, count(選課.學號) as選課門數,再單擊“添加”按鈕;在“分組依據”選項卡中添加“選課.課程號”、然后單擊“滿足條件”按鈕,輸入條件“count(*)>=5”,在“排序依據”選項卡中添加“平均分”(升序),將輸出去向設置為表并輸入文件名“stu_temp”。最后,一定要運行本查詢。
方法2:命令方法。在命令窗口直接輸入命令:
sele 學生.學號,姓名, avg(成績) as 平均分,count(選課.學號) as選課門數 from選課 inner join 學生on 學生.學號=選課.學號 group by (選課.課程號) having count(*)>=5 order by 平均分 into dbf stu_temp
2. 建立一個名為menu_lin的下拉式菜單,菜單中有兩個菜單項"查詢"和"退出"。"查詢"項下還有一個子菜單,子菜單有"按姓名"和"按學號"兩個選項。在"退出"菜單項下創(chuàng)建過程,該過程負責使程序返回到系統(tǒng)菜單。
解答:
單擊“文件”菜單,單擊“新建”,在“新建”對話框中選擇“菜單”,單擊“新建文件”按鈕,在出現(xiàn)的“新建菜單”對話框中單擊“菜單”按鈕,輸入菜單文件名“menu_lin”,進入“菜單設計器”,按試題要求設計菜單項和子菜單,其中,在"退出"菜單項下創(chuàng)建過程,在過程編輯框中輸入代碼:Set sysmenu to default。
三、綜合應用(1小題,計30分)
設計名為mystu的表單(控件名為form1,文件名為mystu)。表單的標題為"學生學習情況統(tǒng)計"。 表單中有一個選項組控件(命名為myOption)和兩個命令按鈕"計算"(名稱為Command1)和"退出"(名稱為Command2)。其中, 選項組控件有兩個按鈕"升序"(名稱為Option1)和"降序"(名稱為Option2)。
運行表單時,首先在選項組控件中選擇"升序"或"降序", 單擊"計算"命令按鈕后,按照成績"升序"或"降序"(根據選項組控件)將選修了"C語言"的學生學號和成績分別存入stu_sort1.dbf和stu_sort2.dbf文件中。
單擊"退出"按鈕關閉表單。
解答:
單擊“文件”菜單,單擊“新建”命令,在打開的對話框中選擇“表單”,在“創(chuàng)建”對話框中輸入表單文件名:mystu,進入表單設計器后,在表單空白區(qū)域單擊鼠標右鍵,在出現(xiàn)的快捷菜單中單擊“屬性”,在“屬性”窗口中,單擊“布局”頁框,將“Caption”屬性改為:“學生學習情況統(tǒng)計”。打開“表單設計器”工具欄,添加選項按鈕組和兩個命令按鈕,打開選項按鈕組的“屬性”窗口,將其“Name”屬性改為“myOption”,然后用選項按鈕組的“生成器”設置其標題屬性,對命令按鈕用“屬性”窗口設置其標題屬性,最后設置兩個命令按鈕的單擊事件代碼如下:
按鈕“計算”的單擊事件代碼為:
n=thisform.myOption.value
if thisform.myOption.value=1
sele 選課.學號,成績 from 課程 inner join 選課 on 選課.課程號=課程.課程號 where 課程名稱="C語言" order by 成績 into dbf stu_sort1
else
sele 選課.學號,成績 from 課程 inner join 選課 on 選課.課程號=課程.課程號 where 課程名稱="C語言" order by 成績 desc into dbf stu_sort2
endif
按鈕“退出”的單擊事件代碼為:
thisform.release
附:相關數據表:
學生.dbf 選課.dbf 課程.dbf
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |