山東省昌樂一中 劉永霞
目前國(guó)內(nèi)一些科研、企事業(yè)單位的數(shù)據(jù)類管理都已經(jīng)開始應(yīng)用計(jì)算機(jī)進(jìn)行,實(shí)踐表明:計(jì)算機(jī)管理能提高工作效率,使人們從乏味的數(shù)據(jù)登記、統(tǒng)計(jì)工作中解脫出來,并保證工作的準(zhǔn)確率。與此類似,近年來許多高校的成績(jī)管理也都逐漸應(yīng)用計(jì)算機(jī)。為響應(yīng)國(guó)家的提高全國(guó)人口素質(zhì)的號(hào)召,許多高校每年都在擴(kuò)招,這在一定程度上給高校的成績(jī)管理帶來許多不便:每學(xué)期教師報(bào)送的考試要登記,學(xué)期結(jié)束又要統(tǒng)計(jì);登記、統(tǒng)計(jì)這樣的成績(jī)經(jīng)常會(huì)出現(xiàn)錯(cuò)誤。因?yàn)楣ぷ鲝?qiáng)度大,所以就需要有一種管理方便、錯(cuò)誤率小的管理方法來取代,而應(yīng)用計(jì)算機(jī)管理是最有效的途徑。學(xué)生成績(jī)查詢系統(tǒng)是一個(gè)學(xué)校不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校教務(wù)處、老師以及同學(xué)來說都至關(guān)重要,學(xué)生成績(jī)查詢系統(tǒng)能夠?yàn)槿藗兲峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。但是以前,人們普遍使用傳統(tǒng)的人工方式管理成績(jī),這種管理方式存在著許多缺點(diǎn),如:效率低、任務(wù)重等, 另外隨著時(shí)間的增加,將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來了不少的困難。數(shù)據(jù)庫作為計(jì)算機(jī)應(yīng)用的一部分,對(duì)學(xué)生成績(jī)查詢進(jìn)行管理,具有著手工管理所無法比擬的優(yōu)點(diǎn),例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生成績(jī)查詢的效率。我作為一名計(jì)算機(jī)專業(yè)的本科生,希望能用我大學(xué)期間所學(xué)知識(shí)(VFP系統(tǒng)應(yīng)用開發(fā))來設(shè)計(jì)一套學(xué)生成績(jī)查詢系統(tǒng)的應(yīng)用程序。
在學(xué)生成績(jī)查詢數(shù)據(jù)庫中,分別建立了“學(xué)生”表、“班級(jí)”表、“系”表、“課程”表、“成績(jī)”表,每個(gè)表都分別建立了索引以提高查詢速度;每個(gè)表之間還建立了相互的關(guān)系,這對(duì)于查詢和打印報(bào)表等有意想不到的效果。
圖1 學(xué)生成績(jī)查詢流程圖
圖2 成績(jī)查詢系統(tǒng)的模塊組成
該數(shù)據(jù)庫有一個(gè)比較重要的表:學(xué)生表,它是一個(gè)信息比較全的表,包含以下字段:學(xué)號(hào)(Character,6),姓名(Characetr,8),性別(Character,2),出生日期(Numeric,8),籍貫(Character,40),系編號(hào)(Character,6),班級(jí)編號(hào)(Character,4),課程編號(hào)(Character,4),成績(jī)(Numeric,2)。其它的表以此類推。 各個(gè)表之間的關(guān)系如下:
1)“學(xué)生”表和“班級(jí)”表之間是多對(duì)一關(guān)系,通過索引“班級(jí)編號(hào)”關(guān)聯(lián)
2)“系”表和“班級(jí)”表之間是一對(duì)多關(guān)系,通過索引“系編號(hào)”關(guān)聯(lián)
3)“學(xué)生”表和“成績(jī)”表之間是一對(duì)多關(guān)系,通過索引“學(xué)號(hào)”關(guān)聯(lián)
4)“系”表和“課程”表之間是一對(duì)多關(guān)系,通過索引“系編號(hào)”關(guān)聯(lián)
5)“課程”表和“成績(jī)”表之間是一對(duì)多關(guān)系,通過索引“課程編號(hào)“關(guān)聯(lián)
一個(gè)成熟的查詢系統(tǒng)應(yīng)該能滿足該項(xiàng)管理的全部要求,應(yīng)該能根據(jù)管理發(fā)展的需要進(jìn)行擴(kuò)充和修改,應(yīng)該能對(duì)自身有維護(hù)功能且操作方便。一般來說應(yīng)該具有輸入、修改、查詢、統(tǒng)計(jì)、打印、維護(hù)等功能,成績(jī)查詢系統(tǒng)就應(yīng)該滿足成績(jī)管理的全部要求。成績(jī)管理是以紙為載體記錄學(xué)生成績(jī)的,通常教師批閱學(xué)生答卷后,以班級(jí)、課程為單位填寫學(xué)生成績(jī)登記表并交送教學(xué)管理辦公室保存,辦公室的成績(jī)管理就以此為原始檔案材料進(jìn)行,主要包括以學(xué)期、班級(jí)為單位登記學(xué)期成績(jī)表;以班級(jí)、課程為單位登記成績(jī)公布表;登記學(xué)生個(gè)人成績(jī)表;期末做出考試、考查不及格的學(xué)生處理情況表;考試、考查成績(jī)統(tǒng)計(jì)表等[1](如圖1)。
本系統(tǒng)屬于模塊結(jié)構(gòu),有主模塊及子模塊構(gòu)成,如圖2所示[2]。
1)在輸入修改模塊中可以對(duì)學(xué)號(hào)、學(xué)籍、成績(jī)、課程、不及格成績(jī)及實(shí)習(xí)情況進(jìn)行輸入和修改。
2)在查詢模塊中可以對(duì)學(xué)籍、成績(jī)、課程、畢業(yè)實(shí)習(xí)等情況進(jìn)行查詢。
3)在統(tǒng)計(jì)模塊中可以統(tǒng)計(jì)出考試考查成績(jī)表、考試考查不及格的學(xué)生處理情況表、每年級(jí)各學(xué)期考試考查不及格遺留情況表。
4)在打印模塊中可以打印出班級(jí)學(xué)期成績(jī)表、個(gè)人學(xué)期成績(jī)表、成績(jī)登記表、成績(jī)公布表、補(bǔ)考單、學(xué)生畢業(yè)成績(jī)表及畢業(yè)答辯成績(jī)表。
5)在系統(tǒng)維護(hù)模塊中具有索引數(shù)據(jù)庫備份數(shù)據(jù)庫到軟盤和恢復(fù)軟盤數(shù)據(jù)到硬盤。
一個(gè)完善的學(xué)生成績(jī)查詢系統(tǒng)要有完善的查詢功能和完善的管理功能,能最大的方便使用者[3]?;谏鲜鱿敕ㄎ覀?cè)O(shè)計(jì)了圖1 功能模塊的學(xué)生成績(jī)查詢系統(tǒng):在五大功能模塊中,每一個(gè)模塊又細(xì)分許多小的功能模塊。以下將簡(jiǎn)要介紹其中幾個(gè)主要的功能模塊:(學(xué)生成績(jī)查詢系統(tǒng)是一件非常繁瑣的事情,由于篇幅所限,不能一一敘述。)
常用的學(xué)生成績(jī)查詢系統(tǒng)是全封閉的,即只有一個(gè)界面:只能先輸入學(xué)號(hào)和密碼,如果輸入的學(xué)號(hào)和密碼不對(duì)就什么也看不到;學(xué)生只能看自己的成績(jī),而不知其他的同學(xué)的基本情況(如有什么院系班級(jí),這些院系班級(jí)各有多少學(xué)生以及學(xué)生的姓名、性別、學(xué)號(hào)、來自何地等)。而我們?cè)O(shè)計(jì)的學(xué)生成績(jī)查詢系統(tǒng)是一套學(xué)生基本情況(學(xué)生的姓名、性別、學(xué)號(hào)、來自何地、所在院系班級(jí))公開,成績(jī)可公開或不公開(由管理員控制)的系統(tǒng)[4],主要包括以下幾方面:
1)查詢方式模塊:查詢時(shí)可按學(xué)生基本情況(學(xué)生的姓名、性別、學(xué)號(hào)、來自何地、所在院系班級(jí))分類查詢或智能查詢(只要在學(xué)生基本情況中出現(xiàn)的關(guān)鍵字就可查詢)。
2)自動(dòng)統(tǒng)計(jì)排序模塊:自動(dòng)統(tǒng)計(jì)查詢到的內(nèi)容的人數(shù)及男女生人數(shù),查詢時(shí)可按姓名、性別、學(xué)號(hào)、來自何地、所在院系、班級(jí)自動(dòng)分類排序。
3)查詢界面模塊:學(xué)生可選擇每頁顯示記錄數(shù)及很方便選擇想要查詢的頁碼。
4)顯示查詢到的詳細(xì)內(nèi)容模塊:查詢到指定記錄時(shí)可顯示學(xué)生基本資料及各個(gè)學(xué)期各門課程成績(jī)、學(xué)期總分及在校期間總分和、班主任是誰等。
管理模塊的好壞是整個(gè)系統(tǒng)的關(guān)鍵,在管理模塊中本著適用性廣(小學(xué)、中學(xué)、中專、大學(xué)考試成績(jī)都適用)、實(shí)用方便、分級(jí)管理、功能全面的原則進(jìn)行設(shè)計(jì),共分8個(gè)模塊[5]。
1)學(xué)生管理
在此模塊中可對(duì)學(xué)生的學(xué)號(hào)、姓名、性別、學(xué)生密碼、聯(lián)系電話、系別、專業(yè)、班級(jí)名稱、家庭住址、籍貫、政治面貌、畢業(yè)證書號(hào)、出生日期、入學(xué)時(shí)間、畢業(yè)時(shí)間、學(xué)位、獎(jiǎng)勵(lì)、處分和備注等內(nèi)容進(jìn)行查詢及分類查詢,自動(dòng)統(tǒng)計(jì)查詢到的內(nèi)容的人數(shù)及男女生人數(shù),搜索之后可對(duì)搜索到的學(xué)生進(jìn)行全部?jī)?nèi)容的修改或刪除。
2)權(quán)限管理
成績(jī)公開權(quán)限管理:修改成績(jī)是否公開:公開——任何人都可以查看其他人的成績(jī);不公開——要用密碼才可查看自己的成績(jī)。
密碼修改權(quán)限管理:即準(zhǔn)不準(zhǔn)學(xué)生修改密碼,完全由管理員設(shè)定。
3)校級(jí)管理
可增加學(xué)校一級(jí)的管理人員,校級(jí)管理員可輸入以下內(nèi)容:登錄號(hào)、姓名、性別、系別、職務(wù)、密碼、是否是管理員。如果是管理員,就有增減人員和修改記錄的權(quán)力;如果不是管理員,就只能有瀏覽的權(quán)限。
4)數(shù)據(jù)庫備份
為了預(yù)防服務(wù)器上數(shù)據(jù)庫出現(xiàn)意外,可定期下載備份數(shù)據(jù)庫。上傳時(shí)覆蓋服務(wù)器里的數(shù)據(jù)庫即可。
5)增加學(xué)生
用于錄入新的學(xué)生。錄入的數(shù)據(jù)項(xiàng)有:學(xué)號(hào)、姓名、性別、學(xué)生用密碼、聯(lián)系電話、系別、專業(yè)、班級(jí)名稱、家庭住址、籍貫、政治面貌、畢業(yè)證書號(hào)、出生日期、入學(xué)時(shí)間、畢業(yè)時(shí)間、學(xué)位、獎(jiǎng)勵(lì)、處分和備注、及學(xué)生的像片的插入。其中學(xué)號(hào)、姓名、性別、系別或?qū)I(yè)、班級(jí)名稱為必錄數(shù)據(jù)項(xiàng),學(xué)號(hào)為主要檢索的數(shù)據(jù)項(xiàng)(即不能有兩個(gè)學(xué)生有完全相同的內(nèi)容)。
6)增加班級(jí)
用于錄入新的班級(jí),錄入數(shù)據(jù)項(xiàng)有:系別或?qū)I(yè)、班級(jí)名稱、管理員密碼、班主任、班主任性別和本學(xué)期的課程名稱,其中系別或?qū)I(yè)、班級(jí)名稱、管理員密碼為必錄數(shù)據(jù)項(xiàng),每個(gè)學(xué)期的課程最多可錄入20門。
7)系別分析
可對(duì)已錄入的系別的所有學(xué)生各個(gè)學(xué)期的成績(jī)(總分)、各單科成績(jī)進(jìn)行排名和成績(jī)分析。分析內(nèi)容:可設(shè)定各科成績(jī)的滿分值,然后進(jìn)行單科成績(jī)最高分、最低分、平均分、及格人數(shù)、不及格人數(shù)、及格率和各分?jǐn)?shù)段的人數(shù)統(tǒng)計(jì)及百分比統(tǒng)計(jì)及每個(gè)學(xué)生的年級(jí)排名。
8)班級(jí)管理
系統(tǒng)管理員、校級(jí)管理員、班級(jí)管理員(班主任)同時(shí)有此管理權(quán)限。在這里可修改已有的班級(jí)內(nèi)容和刪除此班級(jí),可進(jìn)行以班級(jí)為單位的學(xué)生各個(gè)學(xué)期的成績(jī)(總分)、各單科成績(jī)進(jìn)行排名和成績(jī)分析(分析內(nèi)容同上)??砂锤鲗W(xué)期各單科課程進(jìn)行學(xué)生成績(jī)的批量錄入及修改。
本系統(tǒng)是采用數(shù)據(jù)庫開發(fā)系統(tǒng)VFP來進(jìn)行設(shè)計(jì)的,利用VFP中的多級(jí)菜單的子菜單和表單實(shí)現(xiàn)的,具有完善的查詢功能和完善的修改功能,能最大的方便使用者。本系統(tǒng)的實(shí)現(xiàn)由下列幾個(gè)主要部分組成:由一個(gè)登錄界面及系統(tǒng)的主界面(即查詢界面)組成。
1)系統(tǒng)啟動(dòng)后(如圖3),用戶必須在登錄界面正確輸入用戶名和密碼,才能成功登錄系統(tǒng);否則不能成功登錄,這時(shí)系統(tǒng)會(huì)出現(xiàn)一個(gè)“登錄錯(cuò)誤”對(duì)話框,要求退出系統(tǒng)的登錄。
2)系統(tǒng)的主界面由6個(gè)下拉菜單即查詢、修改、統(tǒng)計(jì)、維護(hù)、打印、退出以及各個(gè)子菜單組成(如圖4)。
用戶可以通過下拉菜單及子菜單進(jìn)行下列各項(xiàng)操作:
通過“查詢”菜單的各個(gè)子菜單項(xiàng)可以瀏覽“學(xué)生”表的各種信息。
通過“修改”菜單中的子菜單項(xiàng)可以對(duì)系統(tǒng)的各項(xiàng)數(shù)據(jù)進(jìn)行“添加”、“刪除”和修改。
通過“統(tǒng)計(jì)”菜單可以統(tǒng)計(jì)某門課程的成績(jī)及各門課程的成績(jī)。
通過“維護(hù)”菜單可以對(duì)數(shù)據(jù)進(jìn)行備份以防數(shù)據(jù)丟失。
圖3 登錄界面
圖4 系統(tǒng)主界面
通過“打印”菜單可以打印出各種信息。
通過“退出”菜單則是退出成績(jī)查詢系統(tǒng)。
在實(shí)際設(shè)計(jì)數(shù)據(jù)庫時(shí),必須充分了解所要處理的對(duì)象,認(rèn)真分析研究各種數(shù)據(jù)庫之間的關(guān)系,合理設(shè)計(jì)數(shù)據(jù)庫,充分利用數(shù)據(jù)庫的各種工具,正確編寫程序代碼,才能編制出較理想的數(shù)據(jù)庫系統(tǒng)。在實(shí)際應(yīng)用中,不斷豐富、完善系統(tǒng),就會(huì)使系統(tǒng)理想化。在編制過程中,我首先考慮到了界面的友好性,并在界面設(shè)計(jì)時(shí)不采用煩瑣的細(xì)節(jié),使界面簡(jiǎn)單、清晰,便于操作。但是由于畢業(yè)設(shè)計(jì)時(shí)間較短,因此該系統(tǒng)還有許多不盡如人意的地方比如聯(lián)機(jī)文檔比較少,用戶界面不夠美觀,出錯(cuò)處理不夠等多方面問題,這些都有待進(jìn)一步改善。由于數(shù)據(jù)庫(VFP)是一種較為簡(jiǎn)單的設(shè)計(jì)軟件,因此設(shè)計(jì)出的系統(tǒng)可能也比較單一。
[1]陳志恬.Visual FoxPro 6.0 實(shí)用開發(fā)指南[M].成都:電子科技大學(xué)出版社,1999:27-250.
[2]周生鋒.微機(jī)數(shù)據(jù)庫系統(tǒng)FoxPro for Windows[M].南京:南京大學(xué)出版社,2002:38-158.
[3]葉齊煉,申華.學(xué)校教務(wù)工作實(shí)用手冊(cè)[M].北京:開明出版社,2001:35-66.
[4]周蘇,吳良占,沈填明.FoxBASE及程序設(shè)計(jì)技巧[J].天津:天津科學(xué)技術(shù)出版社,2003:15-21.
[5]袁世鷹.微機(jī)教務(wù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].北京:開明出版社,1992:41-45.