




已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)一、概述隨著學(xué)校教務(wù)的越來(lái)越繁重,學(xué)校的學(xué)生,教師,課程的日益增多,因此對(duì)它們的管理問(wèn)題也是日益突顯,所以需要一個(gè)專業(yè)的應(yīng)用程序?qū)λ鼈儗?shí)施系統(tǒng)的管理。為方便對(duì)學(xué)校日常工作進(jìn)行高效的管理,設(shè)計(jì)此數(shù)據(jù)庫(kù)以提高學(xué)校的管理效率。隨著現(xiàn)代科技的高速發(fā)展,設(shè)備和管理的現(xiàn)代化,在實(shí)際工作中如何提高工作效率成為一個(gè)很重要的問(wèn)題。而建立教學(xué)管理信息系統(tǒng)是一個(gè)很好的解決辦法。本系統(tǒng)教學(xué)管理系統(tǒng)就是為了實(shí)現(xiàn)對(duì)它們的管理而專門(mén)設(shè)計(jì)的。本教學(xué)管理系統(tǒng)是用Sybase公司的PowerBuilder數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā)工具而開(kāi)發(fā)的。它主要包括學(xué)生管理、成績(jī)管理、班級(jí)管理、課程管理和教師管理。它是通過(guò)對(duì)學(xué)校日常教學(xué)管理中的課程、選課、學(xué)生、班級(jí)、教師、成績(jī)等相關(guān)內(nèi)容進(jìn)行分析,完成具有學(xué)生管理、成績(jī)管理、班級(jí)管理、教師管理、課程管理等相關(guān)功能的小型數(shù)據(jù)庫(kù)管理應(yīng)用系統(tǒng)。基本要求:1、完成學(xué)生、班級(jí)、課程等表的維護(hù)2、完成成績(jī)表的瀏覽查找3、完成成績(jī)表的維護(hù)4、按班級(jí)、按課程計(jì)算平均成績(jī)、最高成績(jī)、最低成績(jī)、及格率5、統(tǒng)計(jì)某學(xué)生、某學(xué)期的所有課程的平均成績(jī)。6、查詢教師的授課情況7、完成注冊(cè)用戶管理功能二、需求分析1、本系統(tǒng)是開(kāi)發(fā)目標(biāo)是有效管理學(xué)生,教師,課程等信息,實(shí)現(xiàn)這些信息的數(shù)據(jù)錄入、瀏覽、修改、查詢等,從而實(shí)現(xiàn)對(duì)信息的規(guī)范化、系統(tǒng)化、自動(dòng)化管理。根據(jù)對(duì)終端用戶的調(diào)研,得出下面的需求分析說(shuō)明文本:() 由于學(xué)生等信息具有一定的保密性,為了便于管理,應(yīng)該為用戶設(shè)置密碼保護(hù),以提高系統(tǒng)的數(shù)據(jù)安全性。() 使用該系統(tǒng),能夠?qū)W(xué)生,教師信息時(shí)行記錄,并能夠非常方便地瀏覽、添加、編輯和查詢。() 使用該系統(tǒng),能夠?qū)W(xué)生的成績(jī)信息非常方便地瀏覽、添加、編輯和查詢,實(shí)現(xiàn)對(duì)成績(jī)的有效管理,方便教師查看。() 學(xué)校的班級(jí)是不斷增加的,有些班級(jí)還要撤編,所以應(yīng)用程序應(yīng)該能夠方便地對(duì)學(xué)生班級(jí)進(jìn)行添加、編輯、刪除。() 課程信息描述了課程名稱、授課教師等重要教學(xué)方面的信息,應(yīng)該方便進(jìn)行管理。2、根據(jù)系統(tǒng)設(shè)計(jì)規(guī)化出的實(shí)體有學(xué)生實(shí)體,班級(jí)實(shí)體,課程實(shí)體,教師實(shí)體,各實(shí)體的-圖如下:圖1學(xué)生實(shí)體E-R圖圖2班級(jí)實(shí)體E-R圖圖3課程實(shí)體E-R圖圖4教師實(shí)體E-R圖圖5各實(shí)體聯(lián)系E-R圖3、 數(shù)據(jù)字典經(jīng)過(guò)可行性分析和初步需求調(diào)查,抽象出該子系統(tǒng)業(yè)務(wù)流程圖,如圖6所示。下面,結(jié)合該實(shí)例具體情況,給出具體需求。圖6教學(xué)管理業(yè)務(wù)流程圖 經(jīng)分析之后,本系統(tǒng)要用到六個(gè)基本表:學(xué)生信息表,班級(jí)信息表,課程信息表,教師信息表,成績(jī)信息表,用戶表 學(xué)生信息表:定義了學(xué)生的學(xué)號(hào),姓名,性別,出生日期,班級(jí)號(hào),總學(xué)分班級(jí)信息表:定義了班級(jí)的班級(jí)號(hào),班級(jí)名,學(xué)院,專業(yè),人數(shù) 課程信息表:定義了課程的課程號(hào),課程名,學(xué)時(shí),學(xué)分,開(kāi)課學(xué)期,教師號(hào) 教師信息表:定義了教師的教師號(hào),教師名,性別,職稱成績(jī)信息表:定義了學(xué)生的學(xué)號(hào),課程號(hào),分?jǐn)?shù),學(xué)期,班級(jí)號(hào)用戶表:教學(xué)管理系統(tǒng)注冊(cè)用戶使用四、數(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é)分,開(kāi)課學(xué)期,教師號(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)系表,如下:表stu學(xué)生信息表字段名數(shù)據(jù)類型含義說(shuō)明空值情況學(xué)號(hào)Char(6)學(xué)生編號(hào)主關(guān)鍵字姓名Char(8)學(xué)生姓名不為空性別Char(2)學(xué)生性別不為空出生日期Date出生日期可為空班級(jí)號(hào)Char(6)所在班級(jí)可為空總學(xué)分Dec(4,1)總學(xué)分可為空表class班級(jí)信息表字段名數(shù)據(jù)類型含義說(shuō)明空值情況班級(jí)號(hào)Char(6)班級(jí)編號(hào)主關(guān)鍵字班級(jí)名Char(12)班級(jí)名稱可為空學(xué)院Char(12)所在學(xué)院可為空專業(yè)Char(12)所在專業(yè)可為空人數(shù)Dec(2)班級(jí)人數(shù)可為空表3course課程信息表字段名數(shù)據(jù)類型含義說(shuō)明空值情況課程號(hào)Char(6)課程編號(hào)主關(guān)鍵字課程名Char(12)課程編號(hào)不為空學(xué)時(shí)Dec(2)課程學(xué)時(shí)可為空學(xué)分Dec(2)課程學(xué)分可為空開(kāi)課學(xué)期Dec(2)開(kāi)課學(xué)期可為空教師號(hào)Char(6)授課教師外鍵表teacher教師信息表字段名數(shù)據(jù)類型含義說(shuō)明空值情況教師號(hào)Char(6)教師編號(hào)主關(guān)鍵字教師名Char(8)教師姓名不為空性別Char(2)教師性別可為空職稱Char(8)教師職稱可為空表score成績(jī)信息表字段名數(shù)據(jù)類型含義說(shuō)明空值情況學(xué)號(hào)Char(6)學(xué)生編號(hào)主關(guān)鍵字課程號(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ù)類型含義說(shuō)明空值情況用戶名Varchar(12)用戶名稱主關(guān)鍵字密碼Varchar(12)用戶密碼不為空五、軟件功能設(shè)計(jì)、登錄到教學(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é)期的所有課程的平均成績(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)行添加,刪除,修改和查詢及教師授課情況的查詢。圖7 軟件功能圖、軟件功能介紹()首先進(jìn)入用戶登錄界面,在該界面輸入有效的用戶名與密碼,單擊“確認(rèn)”登錄。圖8 用戶登錄界面(2)進(jìn)入教學(xué)管理系統(tǒng)主應(yīng)用界面后,單擊對(duì)應(yīng)的菜單欄選項(xiàng),選擇所需的操作。圖9主頁(yè)面(3) 打開(kāi)學(xué)生管理菜單可以對(duì)學(xué)生的記錄進(jìn)行添加、刪除、修改和查詢。圖10學(xué)生管理頁(yè)面可以對(duì)學(xué)生的姓名和班級(jí)分別進(jìn)行查詢。圖11 學(xué)生查詢頁(yè)面(4)打開(kāi)成績(jī)管理菜單可以對(duì)成績(jī)的記錄進(jìn)行添加、刪除、修改和查詢。圖12成績(jī)管理頁(yè)面可以對(duì)學(xué)號(hào),課程號(hào)分別查詢,也可以學(xué)號(hào)、課程號(hào)一起查詢。圖13 成績(jī)查詢頁(yè)面1輸入班級(jí)號(hào)、輸入課程號(hào)計(jì)算平均成績(jī)、最高成績(jī)、最低成績(jī)、及格率圖14 成績(jī)查詢頁(yè)面2統(tǒng)計(jì)某學(xué)生,某學(xué)期的所有課程的平均成績(jī)圖15 學(xué)期平均成績(jī)查詢頁(yè)面(5) 打開(kāi)班級(jí)管理菜單可以對(duì)班級(jí)的記錄進(jìn)行添加、刪除、修改和查詢。圖16 班級(jí)管理頁(yè)面輸入班級(jí)號(hào),對(duì)班級(jí)所有信息進(jìn)行查詢圖17 班級(jí)查詢頁(yè)面(6) 打開(kāi)課程管理菜單可以對(duì)課程的記錄進(jìn)行添加、刪除、修改和查詢。圖18 課程管理頁(yè)面輸入課程號(hào),對(duì)課程所有信息進(jìn)行查詢圖19 課程查詢頁(yè)面(7) 打開(kāi)教師管理菜單可以對(duì)教師的記錄進(jìn)行添加、刪除、修改和查詢。圖20 教師管理頁(yè)面輸入教師號(hào),可對(duì)教師所授課程時(shí)行查詢圖21教師查詢頁(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事件下輸入如下代碼:/ Profile StudentSQLCA.DBMS = ODBCSQLCA.AutoCommit = FalseSQLCA.DBParm = Connectstring=DSN=studentconnect;if sqlca.sqlcode0 thenmessagebox(連接失敗,不能連接數(shù)據(jù)源)returnend ifopen(w_login) (3) 學(xué)生管理頁(yè)面、成績(jī)管理頁(yè)面、班級(jí)管理頁(yè)面、課程管理頁(yè)面、教師管理頁(yè)面功能似,類所以以學(xué)生管理頁(yè)面為例,學(xué)生管理頁(yè)面(圖10)的代碼如下: 顯示按鈕cb_3的代碼:dw_1.retrieve(%,%)添加按鈕cb_tianjia的代碼:string ls_ssexdec ls_szongif rb_1.checked thenls_ssex=男else if rb_2.checked thenls_ssex=女 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(),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.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(),性別)=男thenrb_1.checked=truerb_2.checked=falseelserb_2.checked=truerb_1.checked=falseend ifelse cb_4.text=修改string ls_ssexdec ls_szongif rb_1.checked thenls_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(),班級(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=em_1.text=rb_1.checked=falserb_2.checked=falseend if修改按鈕cb_2的代碼:dw_1.update()其中dw_1的DataObject屬性為d_stu. (4)學(xué)生查詢頁(yè)面、成績(jī)查詢頁(yè)面、班級(jí)查詢頁(yè)面、課程查詢頁(yè)面、教師查詢頁(yè)面功能類似,所以以學(xué)生查詢頁(yè)面為例,學(xué)生查詢頁(yè)面(圖11)的代碼如下:學(xué)生查詢按鈕cb_1的代碼:dw_1.retrieve(%+sle_1.text+%,)班級(jí)查詢按鈕cb_的代碼: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è)面(圖14)的代碼如下:Tab_1.tabpage_4.cb_7的clicked事件下的代碼為:integer count1,result,count2declare jisuan cursor forselect 分?jǐn)?shù) from score where 班級(jí)號(hào)=:sle_7.text; open jisuan; fetch jisuan into :result; do while sqlca.sqlcode=0count2=count2+1if result=60 then count1=count1+1end iffetch jisuan into :result;loopclose jisuan;messagebox(提示,該班級(jí)的及格率是:+string(count1/count2)*100)+%)(6)查詢教師授課成績(jī)頁(yè)面(圖19)的代碼如下:Teacher表與course表以教師號(hào)為外鍵建立關(guān)聯(lián)。按鈕Cb_1的clicked事件下的代碼:dw_1.retrieve(%+sle_1.text+%)其中dw_1的DataObject屬性為d_shouke七、 心得體會(huì)PowerBuilder開(kāi)發(fā)工具是一款比較好用的開(kāi)發(fā)工具,通過(guò)這次課程設(shè)計(jì),我基本上掌握了PB開(kāi)發(fā)工具的運(yùn)用,能獨(dú)立完成一些小型軟件的設(shè)計(jì)了,不得不說(shuō),課程設(shè)計(jì)是一門(mén)必要的課程。在做教學(xué)管理系統(tǒng)的這段時(shí)間里讓我學(xué)會(huì)了很多,也懂得了很多。通過(guò)這次課設(shè)讓我更深刻的了解到了在課堂上的學(xué)習(xí)總是膚淺的,只有在實(shí)踐中才能
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)進(jìn)口白牛皮紙項(xiàng)目投資可行性研究分析報(bào)告
- 2025-2030年中國(guó)庫(kù)房租賃行業(yè)深度研究分析報(bào)告
- 2025-2030年中國(guó)出風(fēng)口項(xiàng)目投資可行性研究分析報(bào)告
- 2025-2030年中國(guó)磁性(浮球)液位計(jì)項(xiàng)目投資可行性研究分析報(bào)告
- 中國(guó)移動(dòng)食品拖車(chē)行業(yè)市場(chǎng)規(guī)模及未來(lái)投資方向研究報(bào)告
- 2025年纖維綸繩項(xiàng)目投資可行性研究分析報(bào)告
- 2025年橋梁伸縮縫項(xiàng)目投資可行性研究分析報(bào)告
- 建筑垃圾及其它廢棄物回收利用項(xiàng)目可行性研究報(bào)告建議書(shū)
- 如何設(shè)計(jì)青石雕項(xiàng)目可行性研究報(bào)告投資方案2025標(biāo)準(zhǔn)案例范文
- 2025-2030年中國(guó)電暖鍋行業(yè)深度研究分析報(bào)告
- 土木工程畢業(yè)設(shè)計(jì)框架結(jié)構(gòu)教學(xué)樓計(jì)算書(shū)
- 整理【越南】環(huán)境保護(hù)法
- 河北工業(yè)大學(xué)碩士生指導(dǎo)教師(含新申請(qǐng)者)簡(jiǎn)況表.
- TAIYE370-DTH-IV液壓鉆機(jī)操作維護(hù)說(shuō)明書(shū)
- 金屬壓鑄機(jī)的plc控制
- 吉林大學(xué)第一臨床醫(yī)學(xué)院進(jìn)修人員申請(qǐng)表
- 吉爾吉斯斯坦共和國(guó)公司法
- 進(jìn)制轉(zhuǎn)換(課堂PPT)
- C++程序設(shè)計(jì)(譚浩強(qiáng)完整版).pdf
- 小學(xué)美術(shù)課件--第6課-《獻(xiàn)給母親的禮物》-贛美版--(15張PPT)ppt課件
- 建設(shè)工程模板支撐體系安全管理重點(diǎn)及措施
評(píng)論
0/150
提交評(píng)論