蘇紅杏
【摘 要】學生綜合測評是對學生的考勤、榮譽稱號、能力水平、成績等德智體各方面的全面量化的評估體系。其能夠簡便快捷地對學生資料進行添加、修改、刪除、查詢和打印,極大地改善從事學生教育管理的教師工作狀況,提高工作效率。
【關鍵詞】delphi6.0 Access2000 數據庫 函數 動態數據對象
一、背景
當前我國將發展中等職業教育作為拉動內需的重要措施之一,中等教育面臨極大的發展機遇,各中職學校在校學生人數劇增。但是,不少學校的教學管理仍停留在手工階段,學生成績登記、整理、統計等工作量極大,且經常出錯。因此,開發學生成績管理系統,實現部分辦公自動化就具有很大的實際意義。delphi6.0最大的特點是易學、高效、功能強大,因此,本系統主要研究了利用delphi6.0開發的學生綜合測評管理系統,實現數據庫中信息的查詢、編輯、打印等功能,減輕了過去用手工統計時煩瑣的工作量,為今后實現學分制奠定了基礎。
二、系統開發目標
在進行系統總體規劃時確定了如下目標:應對學生從入學至畢業的全部學習過程中的成績信息進行管理,系統應具有普遍的適用性,對各類學生的成績信息都可以直接使用,系統應具有良好的查詢與統計功能并能用報表或圖表的形式輸出其結果。
三、開發環境的選擇
(一)編程的實現
Borland Delphi 6.0是Windows應用程序開發工具,是目前最為廣泛的易學易用的面向對象的開發工具。Delphi的工作平臺相當廣泛,可以工作于Windows95、Windows98、WindowsNT、Windows2000以及WindowsXP下。編程所用的語言為結構化程度相當高的計算機語言。Delphi的編譯器采用了事件編譯和選擇鏈接技術,使生成的可執行文件冗余更少,運行起來速度更快。Delphi6.0的集成開發環境(IDE)包括代碼編輯器調試器、工具欄圖像編輯器以及諸多用于應用程序開發的組件(如數據庫開發組件)。
(二)關系型數據庫的實現
Access2000 本身就是關系數據庫開發工具,數據庫能匯集各種信息以供查詢、存儲和檢索。Access 的優點在于它能使用數據表示圖或自定義窗體收集信息。數據表示圖提供了一種類似于 Excel 的電子表格,可以使數據庫一目了然。另外,Access 允許創建自定義報表用于打印或輸出數據庫中的信息。Access也提供了數據存儲庫,可以使用桌面數據庫文件把數據庫文件置于網絡文件服務器,與其他網絡用戶共享數據庫。
(三)二者的結合(ADO)
Delphi6.0(BDE)數據庫引擎提供了與數據庫打交道的途徑,我們是通過它來訪問數據庫并對其進行各種操作。Delphi 6.0.Access以及其他微軟的軟件產品都是通過共用(BDE)數據庫引擎,從而給用戶提供了豐富的數據類型。TADOTABLE控件在數據庫中的信息與將信息顯示給用戶看的Delphi6.0程序之間架起了一座橋梁。我們可以設置TADOTABLE控件的各個屬性,告訴它要調用哪個數據庫的哪個部分。缺失情況下,TADOTABLE控件根據數據庫中的一個或多個數據表建立一個dynaset-type(動態集合)類型的記錄集合。TADOTABLE控件還提供了用來瀏覽不同記錄的各種跳轉按鈕。將TADOTABLE控件放置在窗體中之后,我們還必須在該控件與要處理的數據庫之間建立聯系。
四、系統的總體設計
系統按照結構化分析的方法,采用自頂向下,逐步求精的原則,確定相應的系統數據流圖,在設計階段與結構化設計方法相結合,運用“模塊化設計”思想,把系統分為若干個功能子系統,再把每個功能子系統按業務性質具體劃分為若干個功能模塊。本系統框架結構圖如下所示:
五、系統功能模塊設計思想
(一)主界面模塊
該模塊提供學生綜合測評成績管理的主界面,是主系統的唯一入口和出口。該界面提供用戶選擇并調用各個子模塊。學生管理主菜單選擇屏幕共有十三個按鈕:添加、刪除、修改、查詢、退出、總分表、翻頁、學期選擇、計算總分及計算學業基本分。事實上,學生管理系統就是圍繞這個主菜單展開的,是學生管理系統的核心。
(二)查詢模塊
該模塊提供學生信息查詢頁面,通用查詢屏幕:當在主菜單屏幕中選擇<查詢>按鈕后,進入查詢屏幕。它可以對于不同的數據庫進行查詢,輸出用戶所需信息。它具有瀏覽、查詢和定位查詢功能,并能實現各種查詢條件的組合和多個數據庫之間的切換。用戶可以選擇根據學生的姓名或者學號來輸入查詢信息,然后該模塊會檢測輸入數據的合法性,如果正確,顯示所查詢學生的詳細資料,如模塊查詢不到該學生信息,則提示錯誤。
(三)數據維護模塊
該模塊允許用戶先選擇一個維護對象(學生資料),然后進行維護工作(增加、刪除、修改)。數據庫操作:當在主菜單屏幕上選擇添加、修改、刪除等按鈕時,則進入數據庫管理系統操作屏幕,首先選擇數據庫類別——基本情況、成績檔案。不同的數據庫類別分別管理多個不同的數據庫。數據庫的錄入屏幕是相同的,分別有輸入、保存、修改、刪除、退出等功能,對系統中各個數據庫文件增加新紀錄,修改原有記錄,并對新增記錄或被修改記錄進行記錄的合法性檢查。
(四)統計總表模塊
該模塊提供所有學生各個學期的測評總分,便于使用者整體瀏覽和進行統計工作,并可以將統計好的報表按照班級的順序打印出來。數據統計匯總模塊設計在管理信息系統中,必須對輸入的信息進行處理、加工和整理,然后按照系統要求以某種形式輸出。打印模塊設計報表由報表名稱、報表頭和報表內容三部分組成。報表名稱說明報表的性質、用途等,報表頭說明報表所包含的項目,分上表頭和左表頭;報表內容則是報表各個項目的具體數據。根據報表的這些組成,采用一種由用戶交互式地回答系統所提的問題,最后自動生成報表程序的方法來實現報表的打印。
六、系統的數據庫設計思想
依據優化原則分別設計了學生每個學期的基本情況表、總分表。以上各表的設計均以學校日常教學管理和考務管理為基本原則,各表間嚴格排除了數據的冗余,并根據各表合理設計了索引。本系統數據庫設計的一大特色為根據學生基本情況表分學期制作成績表,學期表的創建為成績的查詢、審核、統計、分析操作提供了學生成績完整的數據,減少了數據庫的冗余,節省了數據占用資源空間,提高了數據庫集成時的靈活性,加快了運行速度??紤]到獨占訪問對總表的更新操作有一定的約束性和局限性,未設置對總表的直接修改功能。
學期表設計如下:
標簽名 字段名 字段類型 字段長度 是否非空值
學號 學號 文本 50 是
姓名 A1 文本 50 是
性別 A2 文本 50 否
民族 A3 文本 50 否
系部 A4 文本 50 否
班級 A5 文本 50 是
其他各項成績 A6-A50 數字雙精度型 小數位數自動 否
成績總表設計如下:
標簽名 字段名 字段類型 字段長度 是否非空值
班級 班級 文本 50 是
學號 學號 文本 50 是
姓名 姓名 文本 50 是
第一學期 一 數字雙精度型 小數位數自動 否
其他學期 ――― 數字雙精度型 小數位數自動 否
七、數據的輸入及輸出
本系統的輸入輸出界面友好,結構清晰,選擇層次感強,遵循手工成績錄入的風格和原則,采用班級方式成績輸入界面,本系統的輸入在設計中遵循一個原則:凡涉及操作員輸入數據時,都把輸入的字段與庫中對應表的字段直接相聯系,通過鍵盤與鼠標協作完成。操作人員在輸入學生成績數據時,系統都具有自動檢測機制,對所有數據均檢驗其合法性和正確性,防止錯誤數據的錄入,并對出錯提示相應信息。本系統的輸出主要通過屏幕或打印機設備輸出,打印輸出的報表按規定的格式,做到規范化、標準化。
八、制作過程
界面實現:delphi6.0的表單(form)制作功能十分強大,可以自由調整各種控鍵和框架的位置及大小,由此設計好整個表單的主體界面。
數據庫實現:然后就是數據庫的建立,在ACCESS數據庫中以學期為單位,建立六個學期的表和一個總表,并按照原表的規定設置表單內字段的屬性,接著通過ADO實現表單與數據庫的連接。
表單設計:在ACCESS數據庫中建立一個名為總表的表單以及六個結構一樣的學期表單,再根據原表對數據的要求設置表單內各個字段的類型和長度。
功能模塊實現:最后就是通過編程實現添加、刪除、修改、查詢等各個模塊的功能,在此重點介紹一下幾個功能模塊的制作過程,因為每個學期的字段及各項統計數據的計算方法都是一樣的,所以我先建立了幾個可以在各個學期的數據庫中通用的過程函數,再通過在不同的數據庫中調用數據按照建立好的過程函數來進行統計工作。為防止用戶使用時輸入數據錯誤,表單開始運行時激活只讀屬性。
添加:單擊添加按鈕,即可激活添加函數,原表數據自動清空,并去掉只讀屬性,供用戶輸入新的資料,按鈕標簽由添加變為保存,用戶輸入完新資料后,單擊保存,計算機自動在數據庫中搜索是否存在此人資料,如果存在,則提示錯誤信息,如果不存在,輸入的資料將以插入的形式保存到數據庫中,按鈕標簽恢復為添加,表單屬性變為只讀。
刪除:單擊刪除按鈕,提示是或否,選擇否,則退出,選擇是,則激活刪除函數,在數據庫中查找與此人資料相符合的數據,并將數據刪除。
修改:單擊修改按鈕,按鈕標簽變為保存,去掉原表只讀屬性,供用戶輸入新資料,輸入完畢后單擊保存,系統在數據庫中尋找此人資料,并將新資料覆蓋原資料,按鈕變為修改,表單屬性變為只讀。
查詢:單擊查詢按鈕進入查詢頁面,這里采用了CHECKBOX功能,為用戶提供用戶姓名和學號兩種查詢方式,文本框原為只讀屬性,點擊查詢方式后去掉只讀屬性,輸入查詢信息后單擊查詢按鈕,激活查詢函數,從數據庫中根據姓名或者學號查找此人資料,再通過ADO的查詢功能將數據庫中所找到的數據綁定到原表的文本框內,從而實現查詢功能。
計算:單擊計算基本分按鈕,進入基本分頁面,在分數欄中輸入各科分數,這里采用自動累加功能,將輸入的數據逐個累加,單擊計算按鈕后,自動將計算總分和平均分的結果輸入到對應的文本框中,單擊輸入基本分按鈕,就將平均分也就是學業基本分輸入成績表的學業表現文本框中。
九、結語
學生綜合測評管理系統功能基本符合用戶需求,能夠完成學生綜合測評成績的存儲和成績的查詢以及各類相關報表的打印,并提供部分系統維護功能以及一定的擴展功能,使用戶方便進行數據添加、數據刪除,對于數據的一致性的問題也通過程序進行了有效的解決。
【參考文獻】
[1]江毅等編著.Delphi6.0 數據庫實例編程[M].中國水利水電出版社.
[2]BorLand軟件公司編著.Delphi6.0應用開發.