




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)一、概述每年都有新生的入學(xué),畢業(yè)生的離開。教師隊(duì)伍的壯大,新課程的開設(shè)和舊課程的刪除, 以及學(xué)生每學(xué)期的成績(jī)記錄。對(duì)它們的管理問題也是日益突顯,所以需要一個(gè)專業(yè)的應(yīng)用程序,利用數(shù)據(jù)庫(kù)對(duì)這些數(shù)據(jù)進(jìn)行組織和管理。本系統(tǒng)一一教學(xué)管理系統(tǒng)就是為了實(shí)現(xiàn)高效的管理這些數(shù)據(jù)而專門設(shè)計(jì)的。該教學(xué)管理系統(tǒng)是用PowerBuilder數(shù)據(jù)庫(kù)應(yīng)用開發(fā)工具 SQL嵌入式語(yǔ)言開發(fā)而來的。它主要包括學(xué)生管理、成績(jī)管理、班級(jí)管理、課程管理以及教師管理,對(duì)學(xué)校的日常教學(xué)系統(tǒng)進(jìn)行有效地組織。二、需求分析1、該教學(xué)管理系統(tǒng)是開發(fā)目標(biāo)是有效管理學(xué)生,教師,課程等信息,實(shí)現(xiàn)這些信息的 數(shù)據(jù)錄入、瀏覽、修改、查
2、詢等,從而實(shí)現(xiàn)對(duì)信息的規(guī)范化、系統(tǒng)化、自動(dòng)化管理。根據(jù)對(duì) 終端用戶的調(diào)研,了解了用戶端的需求,進(jìn)行分析得出下面的幾項(xiàng)需求:(1)由于信息具有一定的保密性,為了使擁有權(quán)限的管理員對(duì)數(shù)據(jù)進(jìn)行管理,應(yīng)該為用戶 設(shè)置密碼保護(hù),在用戶訪問是該系統(tǒng)時(shí)進(jìn)行身份的鑒別,以提高系統(tǒng)的數(shù)據(jù)安全性。(2 )使用該教學(xué)系統(tǒng),能夠?qū)崟r(shí)對(duì)學(xué)生,教師信息時(shí)行記錄,并能夠非常方便地瀏覽、添 加、編輯和查詢。(2 )成績(jī)管理,能夠?qū)W(xué)生每學(xué)期的成績(jī)進(jìn)行錄入,修改,并提供計(jì)算學(xué)生的平均成績(jī)的 功能,以及每個(gè)班級(jí)某些課程的平均分進(jìn)行計(jì)算。(4 )學(xué)校的班級(jí)數(shù)可能增加,有些班級(jí)也可能被撤編,所以應(yīng)用程序應(yīng)該能夠方便地對(duì)學(xué) 生班級(jí)進(jìn)行
3、添加、編輯、刪除。同時(shí)班級(jí)系統(tǒng)還要記錄算數(shù)學(xué)院和專業(yè)以及該班級(jí)的學(xué)生數(shù) 量。(5 )課程管理描述了課程號(hào)、課程名稱、授課教師等重要教學(xué)方面的信息,課程號(hào)用于方 便學(xué)生的學(xué)課系統(tǒng)管理。2、根據(jù)以上需求抽象出的實(shí)體有學(xué)生實(shí)體,班級(jí)實(shí)體,課程實(shí)體,教師實(shí)體,各實(shí)體的E-R圖如下:圖1學(xué)生實(shí)體E-R圖圖2 班級(jí)實(shí)體E-R圖圖3 課程實(shí)體E-R圖圖4 教師實(shí)體E-R圖圖5各實(shí)體聯(lián)系E-R圖三、數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)根據(jù)圖5得出各個(gè)關(guān)系模式:(帶下劃線的為主碼) 學(xué)生信息表(學(xué)號(hào),姓名,性別,出生日期,班級(jí)號(hào),總學(xué)分)班級(jí)信息表(班級(jí)號(hào),班級(jí)名,學(xué)院,專業(yè),人數(shù))課程信息表(課程號(hào),課程名,學(xué)時(shí),學(xué)分,開課學(xué)期,
4、教師號(hào))教師信息表(教師號(hào),教師名,性別,職稱)成績(jī)信息表(學(xué)號(hào),課程號(hào),分?jǐn)?shù),學(xué)期,班級(jí)號(hào))用戶表(用戶名,密碼)其中用戶表是教學(xué)管理系統(tǒng)注冊(cè)用戶使用的。由關(guān)系模式得出關(guān)系表,如下:表1 stu學(xué)生信息表字段名數(shù)據(jù)類型含義說明空值情況學(xué)號(hào)Char(6)學(xué)生編號(hào)主關(guān)鍵字姓名varchar(20)學(xué)生姓名不為空性別Char(2)學(xué)生性別不為空出生日期Date出生日期可為空班級(jí)號(hào)Char(10)所在班級(jí)可為空總學(xué)分Dec(4,1)總學(xué)分可為空表2 class班級(jí)信息表字段名數(shù)據(jù)類型含義說明空值情況班級(jí)號(hào)Char(6)班級(jí)編號(hào)主關(guān)鍵字班級(jí)名Char(12)班級(jí)名稱可為空學(xué)院Char(12)所在學(xué)院可
5、為空專業(yè)Char(12)所在專業(yè)可為空人數(shù)Dec(2)班級(jí)人數(shù)可為空表3 course課程信息表字段名數(shù)據(jù)類型含義說明空值情況】田千口 i=r. 課程號(hào)Char(6)課程編號(hào)主關(guān)鍵字課程名Char(12)課程編號(hào)不為空學(xué)時(shí)Dec(2)課程學(xué)時(shí)可為空學(xué)分Dec(2)課程學(xué)分可為空開課學(xué)期Dec(2)開課學(xué)期可為空教師號(hào)Char(6)授課教師外鍵表4 teacher教師信息表字段名數(shù)據(jù)類型含義說明空值情況教師號(hào)Char(6)教師編號(hào)主關(guān)鍵字教師名Char(8)教師姓名不為空性別Char(2)教師性別可為空職稱Char(8)教師職稱可為空表 5 score成績(jī)信息表字段名數(shù)據(jù)類型含義說明空值情況學(xué)號(hào)
6、Char(6)學(xué)生編號(hào)主關(guān)鍵字】田千口 i=r. 課程號(hào)Char(6)課程編號(hào)主關(guān)鍵字分?jǐn)?shù)Dec(2)考試分?jǐn)?shù)可為空學(xué)期Dec(2)考試學(xué)期可為空班級(jí)號(hào)Char(6)班級(jí)編號(hào)可為空表6 user用戶信息表字段名數(shù)據(jù)類型含義說明空值情況用戶名Varchar(12)用戶名稱主關(guān)鍵字密碼Varchar(12)用戶密碼不為空四、軟件功能設(shè)計(jì)1、登錄到教學(xué)管理系統(tǒng)可以完成系統(tǒng)管理功能,學(xué)生管理功能,成績(jī)管理功能,班級(jí) 管理功能,班級(jí)管理功能,課程管理功能和教師管理功能(如圖6)。系統(tǒng)管理:可以實(shí)現(xiàn)用戶的添加和修改密碼。學(xué)生管理:可以對(duì)學(xué)生的記錄進(jìn)行添加,刪除,修改和查詢。還可以統(tǒng)計(jì)某學(xué)生,某學(xué) 期的所有
7、課程的平均成績(jī)。成績(jī)管理:可以對(duì)成績(jī)記錄進(jìn)行添加,刪除,修改和查詢。還可以統(tǒng)計(jì)某學(xué)生、某學(xué)期 的所有課程的平均成績(jī)及按班級(jí),按課程計(jì)算平均成績(jī)、最高成績(jī)、最低成績(jī)、及格率。班級(jí)管理:可以對(duì)成績(jī)記錄進(jìn)行添加,刪除,修改和查詢。課程管理:可以對(duì)課程記錄進(jìn)行添加,刪除,修改和查詢。教師管理:可以對(duì)課程記錄進(jìn)行添加,刪除,修改和查詢及教師授課情況的查詢。圖6軟件功能圖2、軟件功能介紹(1 )首先進(jìn)入用戶登錄界面,在該界面輸入有效的用戶名與密碼,單擊“確認(rèn)”登錄。如 果沒有用戶名和密碼的話也可以自己注冊(cè)。圖7用戶登錄界面圖8用戶注冊(cè)密碼(2) 進(jìn)入教學(xué)管理系統(tǒng)主應(yīng)用界面后,單擊對(duì)應(yīng)的菜單欄選項(xiàng),選擇所需
8、的操作。圖8 主頁(yè)面(3) 打開學(xué)生管理菜單可以對(duì)學(xué)生的記錄進(jìn)行添加、刪除、修改和查詢。學(xué)號(hào)051 1OE襪一収3示里廠京岀蚩13期19C8-C<5520m出a 字萬(wàn)出生u用鉀分£M11A1主林黒1194 * 2-10"上女ib 6眇卸"I展存|帀一札卜彌1強(qiáng)三林19S9-1-2A4H.IF圖9學(xué)生管理頁(yè)面 可以對(duì)學(xué)生的姓名和班級(jí)分別進(jìn)行查詢。圖10學(xué)生查詢頁(yè)面(4) 打開成績(jī)管理菜單可以對(duì)成績(jī)的記錄進(jìn)行添加、刪除、修改和查詢。圖11成績(jī)管理頁(yè)面可以對(duì)學(xué)號(hào),課程號(hào)分別查詢,也可以學(xué)號(hào)、課程號(hào)一起查詢。圖12成績(jī)查詢頁(yè)面1輸入班級(jí)號(hào)、輸入課程號(hào)計(jì)算平均成績(jī)、最
9、高成績(jī)、最低成績(jī)、及格率成績(jī)信息管理平均成績(jī)懸高成績(jī)最低成績(jī)及格率輸入班級(jí)號(hào):95031計(jì)算輸入諜程號(hào)計(jì)算圖12成績(jī)查詢頁(yè)面2統(tǒng)計(jì)某學(xué)生,某學(xué)期的所有課程的平均成績(jī)圖13學(xué)期平均成績(jī)查詢頁(yè)面(5) 打開班級(jí)管理菜單可以對(duì)班級(jí)的記錄進(jìn)行添加、刪除、修改和查詢。圖14班級(jí)管理頁(yè)面輸入班級(jí)號(hào),對(duì)班級(jí)所有信息進(jìn)行查詢-ID, KI芋冼專業(yè)OS 631班計(jì)普平it市機(jī)£圖15班級(jí)查詢頁(yè)面打開課程管理菜單可以對(duì)課程的記錄進(jìn)行添加、刪除、修改和查詢。圖16課程管理頁(yè)面輸入課程號(hào),對(duì)課程所有信息進(jìn)行查詢圖17課程查詢頁(yè)面打開教師管理菜單可以對(duì)教師的記錄進(jìn)行添加、刪除、修改和查詢。圖18教師管理頁(yè)面輸
10、入教師號(hào),可對(duì)教師所授課程時(shí)行查詢圖 19 教師查詢頁(yè)面五、程序源代碼下面給出系統(tǒng)的部分設(shè)計(jì)圖及部分源代碼(1) 在進(jìn)行系統(tǒng)界面編程前,先建立數(shù)據(jù)庫(kù),并建立外鍵。(2) 數(shù)據(jù)庫(kù)建立后,進(jìn)行窗口編程。首先建立一個(gè)新的工作空間和應(yīng)用。連接數(shù)據(jù)庫(kù), 在應(yīng)用的 open 事件下輸入如下代碼:/ ProSQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "Connectstring='DSN=student'"connect;if sqlca.sqlcode<>0 then
11、messageboxC連接失敗","不能連接數(shù)據(jù)源”)returnend ifopen(w_login)(3) 學(xué)生管理頁(yè)面、成績(jī)管理頁(yè)面、班級(jí)管理頁(yè)面、課程管理頁(yè)面、教師管理頁(yè)面功能似, 類所以以學(xué)生管理頁(yè)面為例,學(xué)生管理頁(yè)面(圖9)的代碼如下:顯示按鈕 cb_3 的代碼:dw_1.retrieve('%','%')添加按鈕 cb_tianjia 的代碼:string ls_ssexdec ls_szongif rb_1.checked thenls_ssex='男'elseif rb_2.checked thenls_ss
12、ex='女'end ifend ifls_szong=dec(sle_5.text)insert into stu values(:sle_1.text,:sle_2.text,:ls_ssex,:em_1.text,:sle_4.text,:ls_szong);commit;dw_1.retrieve('%','%')dw_1.scrolltorow(dw_1.rowcount()刪除按鈕 cb_1 的代碼:dw_1.deleterow(dw_1.getrow()修改按鈕 cb_4 的代碼:dw_1.selectrow(dw_1.getrow(
13、),false)if cb_4.text=" 修改 " thendw_1.selectrow(dw_1.getrow(),true)cb_4.text=" 確認(rèn) "sle_1.text=dw_1.getitemstring(dw_1.getrow()," 學(xué)號(hào) ") sle_2.text=dw_1.getitemstring(dw_1.getrow()," 姓名 ") em_1.text=string(dw_1.getitemdate(dw_1.getrow()," 出生日期 ") sle_4.
14、text=dw_1.getitemstring(dw_1.getrow()," 班級(jí)號(hào) ") sle_5.text=string(dw_1.getitemdecimal(dw_1.getrow()," 總學(xué)分 ") if dw_1.getitemstring(dw_1.getrow()," 性別 ")='男 'then rb_1.checked=true rb_2.checked=falseelserb_2.checked=true rb_1.checked=false end if else cb_4.text=&q
15、uot; 修改 " string ls_ssex dec ls_szong if rb_1.checked thenIs_ssex='男'elseif rb_2.checked thenls_ssex='女'end ifend ifls_szong=dec(sle_5.text)dw_1.setitem(dw_1.getrow()," 學(xué)號(hào) ",sle_1.text) dw_1.setitem(dw_1.getrow()," 姓名 ",sle_2.text) dw_1.setitem(dw_1.getrow(),
16、" 班級(jí)號(hào) ",sle_4.text) dw_1.setitem(dw_1.getrow()," 總學(xué)分 ",dec(sle_5.text) dw_1.setitem(dw_1.getrow()," 出生日期 ",date(em_1.text) dw_1.setitem(dw_1.getrow()," 性別 ",ls_ssex) commit;sle_1.text=""sle_2.text=""sle_4.text=""sle_5.text="&
17、quot;em_1.text=""rb_1.checked=false rb_2.checked=false end if 修改按鈕 cb_2 的代碼: dw_1.update() 其中 dw_1 的 DataObject 屬性為 d_stu.(4) 學(xué)生查詢頁(yè)面、 成績(jī)查詢頁(yè)面、 班級(jí)查詢頁(yè)面、 課程查詢頁(yè)面、 教師查詢頁(yè)面功能類似, 所以以學(xué)生查詢頁(yè)面為例,學(xué)生查詢頁(yè)面(圖10)的代碼如下:學(xué)生查詢按鈕 cb_1 的代碼: dw_1.retrieve('%'+sle_1.text+'%','') 班級(jí)查詢按鈕 cb_2 的
18、代碼: dw_1.retrieve('','%'+sle_2.text+'%')其中 dw_1 的 DataObject 屬性為 d_stu.(5) 按班級(jí)號(hào)、按課程號(hào)計(jì)算平均成績(jī)、最高成績(jī)、最低成績(jī)、及格率功能類似,所以以查 詢班級(jí)號(hào)的及格率為例,查詢班級(jí)號(hào)的及格率頁(yè)面(圖12)的代碼如下:Tab_1.tabpage_4.cb_7 的 clicked 事件下的代碼為: integer count1,result,count2 declare jisuan cursor for select 分?jǐn)?shù) from scorewhere 班級(jí)號(hào) =:sl
19、e_7.text;open jisuan;fetch jisuan into :result;do while sqlca.sqlcode=0 count2=count2+1 if result>=60 then count1=count1+1 end if fetch jisuan into :result;loop close jisuan;messagebox("提示",”該班級(jí)的及格率是:"+string(countl/count2)*100)+'%')(6) 查詢教師授課成績(jī)頁(yè)面(圖19)的代碼如下:Teacher 表與 course 表以教師號(hào)為外鍵建立關(guān)聯(lián)。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版九年級(jí)數(shù)學(xué)上冊(cè)《21.3 實(shí)際問題與一元二次方程》同步測(cè)試題及答案
- 2025屆西藏拉薩市北京實(shí)驗(yàn)中學(xué)七年級(jí)數(shù)學(xué)第二學(xué)期期末綜合測(cè)試試題含解析
- 2025屆泰安市重點(diǎn)中學(xué)七下數(shù)學(xué)期末達(dá)標(biāo)檢測(cè)模擬試題含解析
- 客戶關(guān)系維護(hù)與拓展計(jì)劃
- 財(cái)務(wù)共享服務(wù)中心的建設(shè)與運(yùn)作計(jì)劃
- 大型演出的安保方案實(shí)施計(jì)劃
- 浙江省杭州西湖區(qū)杭州市公益中學(xué)2025年八年級(jí)數(shù)學(xué)第二學(xué)期期末檢測(cè)試題含解析
- 軟件設(shè)計(jì)師考試復(fù)習(xí)資料試題及答案
- 企業(yè)戰(zhàn)略目標(biāo)與風(fēng)險(xiǎn)承受能力評(píng)估試題及答案
- 開拓新思維的工作計(jì)劃
- 2025年中國(guó)消防救援學(xué)院第二批面向應(yīng)屆畢業(yè)生招聘28人歷年管理單位筆試遴選500模擬題附帶答案詳解
- T-CIRA 46-2023 核電廠液態(tài)流出物中鍶89和鍶90分析 液體閃爍法
- 介入手術(shù)室感染控制管理
- 1學(xué)會(huì)尊重-尊重自己(說課稿 )-2023-2024學(xué)年道德與法治六年級(jí)下冊(cè)統(tǒng)編版
- 會(huì)計(jì)案例分析-終結(jié)性考核-國(guó)開(SC)-參考資料
- 中國(guó)近代史綱要北京航空航天大學(xué)練習(xí)題復(fù)習(xí)資料
- 胸痹中醫(yī)護(hù)理業(yè)務(wù)查房
- 裝飾材料供應(yīng)合同模板
- GB/T 44748.1-2024篩分試驗(yàn)第1部分:使用金屬絲編織網(wǎng)和金屬穿孔板試驗(yàn)篩的方法
- 2020-2021學(xué)年人教部編版八年級(jí)道德與法治下冊(cè) 第一課 維護(hù)憲法權(quán)威 練習(xí)題
- 墻上高空作業(yè)施工方案
評(píng)論
0/150
提交評(píng)論