已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
目 錄一、系統(tǒng)概述.31.1 目的.31.2 背景.31.3 范圍.3二、需求說明.32.1功能分析.32.2工作流圖.42.3數(shù)據(jù)流圖.52.4數(shù)據(jù)字典.52.5概念模型設(shè)計(jì)(E-R圖).82.6邏輯設(shè)計(jì).8三、系統(tǒng)設(shè)計(jì).93.1軟件模塊結(jié)構(gòu)設(shè)計(jì).93.2 數(shù)據(jù)庫設(shè)計(jì).16四、系統(tǒng)的功能.204.1 系統(tǒng)的主界面.204.2 學(xué)生管理模塊.204.3 教師管理模塊.234.4 成績管理模塊.25五、全文總結(jié)與體會(huì).28參考文獻(xiàn)一、系統(tǒng)概述1.1 目的往往管理學(xué)生檔案信息是非常繁瑣和極為重要的工作.我們?cè)趯W(xué)習(xí)和工作中作出的努力怎樣才能得到很好地保存與管理已經(jīng)是我們所關(guān)心的問題了。為此,通過ASP+SQL技術(shù)來編寫一部管理學(xué)生信息的程序來方便學(xué)生和老師。1.2 背景21世紀(jì)以高科技為核心的知識(shí)經(jīng)濟(jì)將占主導(dǎo)地位,國家的綜合國力和國際競爭力將越來越取決于科學(xué)技術(shù)創(chuàng)新水平。教育作為知識(shí)創(chuàng)新、傳播和應(yīng)用的基礎(chǔ),已經(jīng)成為經(jīng)濟(jì)發(fā)展和社會(huì)進(jìn)步的基礎(chǔ)。在信息爆炸時(shí)代,傳統(tǒng)教學(xué)管理面臨著諸多挑戰(zhàn)。1.3 范圍系統(tǒng)包括的范圍:系統(tǒng)結(jié)構(gòu)流程、前臺(tái)結(jié)構(gòu)、后臺(tái)結(jié)構(gòu)。二、需求說明2.1功能分析教學(xué)管理系統(tǒng)包括學(xué)生信息、教師信息、成績信息,具體功能如下:(1) 學(xué)生消息的添加、查詢、刪除、修改。學(xué)生信息包括學(xué)生學(xué)號(hào)、姓名、性別、年齡。實(shí)現(xiàn)了學(xué)生基本信息的錄入,實(shí)現(xiàn)了按學(xué)號(hào)、姓名、系名稱查詢學(xué)生基本信息以及對(duì)學(xué)生基本信息的更新。(2) 教師信息的添加、查詢、刪除、修改。教師信息包括老師所教課程、教師姓名、教師性別,老師所在系名、學(xué)歷。實(shí)現(xiàn)了教師基本信息的添加,實(shí)現(xiàn)了按姓名、系名稱查詢教職工基本信息以及對(duì)教師基本信息的更新。(3) 成績信息的添加、查詢、刪除、修改。成績信息包括學(xué)號(hào)、姓名、課程編號(hào)、課程名稱、成績。實(shí)現(xiàn)了成績信息的錄入,運(yùn)用連接查詢實(shí)現(xiàn)了按學(xué)號(hào)、學(xué)生姓名、課程號(hào)、課程名稱、教師姓名查詢學(xué)生成績,按課程號(hào)、課程名稱查詢不及格學(xué)生學(xué)號(hào)、姓名,也實(shí)現(xiàn)了對(duì)成績信息表的更新。(4) 退出系統(tǒng)。實(shí)現(xiàn)了關(guān)閉系統(tǒng)的功能。 教學(xué)管理系統(tǒng)功能模塊示意圖:2.2工作流圖2.3數(shù)據(jù)流圖2. 4 數(shù)據(jù)字典2.4.1 數(shù)據(jù)結(jié)構(gòu)卡片為:數(shù)據(jù)結(jié)構(gòu)名:學(xué)生基本信息別名:描述:這是教學(xué)管理系統(tǒng)的主要數(shù)據(jù)結(jié)構(gòu),定義了一個(gè)學(xué)生的基本信息組成:學(xué)號(hào),姓名,專業(yè),性別,年齡 (1) (2)數(shù)據(jù)結(jié)構(gòu)名:教師基本信息別名:教職工基本信息描述:這是教學(xué)管理系統(tǒng)的一個(gè)重要數(shù)據(jù)結(jié)構(gòu),定義了一個(gè)教師的基本信息組成:編號(hào)、教師姓名、性別、備注 (3) 數(shù)據(jù)結(jié)構(gòu)名:成績基本信息別名:成績信息描述:這是教學(xué)管理系統(tǒng)的一個(gè)重要數(shù)據(jù)結(jié)構(gòu),記錄了每一個(gè)學(xué)生的每一門考試的成績的基本信息組成:學(xué)號(hào)、課程名稱、成績 2.4.2 數(shù)據(jù)項(xiàng)卡片:選擇其中一個(gè)數(shù)據(jù)結(jié)構(gòu)卡片給出數(shù)據(jù)項(xiàng)卡片(選擇第一個(gè)數(shù)據(jù)結(jié)構(gòu)卡片) (2) (1)數(shù)據(jù)項(xiàng)名:姓名別名:名字描述:標(biāo)示每個(gè)學(xué)生的代號(hào)定義:字符型位置:取值范圍:010個(gè)字符取值含義:自己定數(shù)據(jù)項(xiàng)名:學(xué)號(hào)別名:學(xué)生編號(hào)描述:唯一標(biāo)識(shí)每個(gè)學(xué)生定義:字符型位置:取值范圍:010個(gè)字符取值含義:順序編號(hào) (4) (3)數(shù)據(jù)項(xiàng)名:性別別名:描述:說明每個(gè)學(xué)生是男生還是女生定義:字符型位置:取值范圍:02個(gè)字符取值含義:男或者女?dāng)?shù)據(jù)項(xiàng)名:系名別名:專業(yè)名描述:說明每個(gè)學(xué)生所學(xué)專業(yè)定義:字符型位置:取值范圍:015個(gè)字符取值含義:由專業(yè)定 (5)數(shù)據(jù)項(xiàng)名:年齡別名:年紀(jì)描述:說明每個(gè)學(xué)生的大小定義:整型位置:取值范圍:04取值含義:按照每個(gè)學(xué)生大小而定2.4.3 數(shù)據(jù)存儲(chǔ)卡片(選擇第一個(gè)數(shù)據(jù)結(jié)構(gòu)卡片分析):數(shù)據(jù)存儲(chǔ)名:查詢結(jié)果別名:描述:查詢學(xué)生基本信息所得的結(jié)果數(shù)據(jù)流來源:學(xué)生基本信息表數(shù)據(jù)流去向:學(xué)校管理者組成:學(xué)號(hào),姓名,專業(yè),性別,年齡 2.4.4數(shù)據(jù)流卡片(選擇第一個(gè)數(shù)據(jù)結(jié)構(gòu)卡片分析)數(shù)據(jù)流名:學(xué)生基本信息表別名:學(xué)生登記表描述:用來錄入學(xué)生基本信息定義:學(xué)生基本信息表=學(xué)號(hào)+姓名+專業(yè)+性別+年齡流入數(shù)據(jù)流:流出數(shù)據(jù)流:存取方式:隨機(jī)2.5概念模型設(shè)計(jì)(E-R圖) 學(xué) 生學(xué)號(hào)姓名系名性別年齡教 師教師姓名系名學(xué)歷課 程選修講授課程編號(hào)課程名稱學(xué)分版本先修成績1mn12.6邏輯設(shè)計(jì)(1)Students(學(xué)號(hào)主鍵,姓名,系名,性別,年齡);(2)Teacher(編號(hào)外鍵,教師姓名主鍵,系名,學(xué)歷);(3)Grade(學(xué)號(hào)外鍵,課程名稱外鍵,成績)(學(xué)號(hào)和課程名稱作為主鍵);綜合上述關(guān)系模式可得,3個(gè)關(guān)系模式都只有一個(gè)主鍵,每個(gè)關(guān)系模式中的所有非主屬性對(duì)候選鍵均沒有部分函數(shù)和傳遞函數(shù)依賴,也沒有主屬性對(duì)候選鍵的部分函數(shù)依賴和傳遞函數(shù)依賴,故可以認(rèn)為3個(gè)關(guān)系模式均達(dá)到BC范式,滿足數(shù)據(jù)庫的開發(fā)要求,無需再對(duì)每一個(gè)關(guān)系模式進(jìn)行分解。1) 學(xué)生信息表字段名稱數(shù)據(jù)類型字段大小必填字段編號(hào) char10是姓名 char10是性別int2否年齡char4否專業(yè)char15否2)成績表字段名稱數(shù)據(jù)類型字段大小必填字段課程編號(hào) char 5是課程名稱 char20是前置課程 char5否學(xué)分 int4否3)教師信息表字段名稱數(shù)據(jù)類型字段大小必填字段教師編號(hào)int 4否教師姓名char10是性別char2否教授課程char10否備注 char10否三、系統(tǒng)設(shè)計(jì)3.1軟件模塊結(jié)構(gòu)設(shè)計(jì)3.1.1創(chuàng)建一個(gè)新的MFC工程,如圖所示3.1.2在對(duì)話框添加按鈕,擺出各個(gè)部件的位置下圖為學(xué)生管理的界面示意圖:3.1.3給每個(gè)按鈕做個(gè)新的對(duì)話框,如登記對(duì)話框如下圖:3.1.4以此類推,將所有的模塊的界面及上面的部件全部擺出來,最后所有的素材如下圖:3.1.5實(shí)現(xiàn)對(duì)話框與對(duì)話框之間的跳轉(zhuǎn)例如要實(shí)現(xiàn)點(diǎn)擊學(xué)生管理界面上的登記按鈕跳到學(xué)生登記的界面點(diǎn)擊登記按鈕跳轉(zhuǎn)到下圖首先需要給學(xué)生登記界面對(duì)話框建立一個(gè)名為MyDlg_Stu_Reg的類,然后在雙擊學(xué)生管理界面上的登錄按鈕,添加下列代碼:void MyDlg_Stu:OnButton1() MyDlg_Stu_Reg stuDlg;/建立學(xué)生登記類的一個(gè)對(duì)象stuDlg.cCid = ;if (stuDlg.DoModal() = IDOK)/生成學(xué)生登錄對(duì)話框,并檢測是否按下確定按鈕,若按下則刷新學(xué)生管理界面的數(shù)據(jù)表RefreshData();其他所有按鈕跳轉(zhuǎn)均為上述方法可以實(shí)現(xiàn)。3.1.6實(shí)現(xiàn)從界面對(duì)話框上輸入數(shù)據(jù)并寫入數(shù)據(jù)庫個(gè)人認(rèn)為這個(gè)是整個(gè)軟件的核心部分,也是最難的部分。就還是拿學(xué)生登錄對(duì)話框舉例,從學(xué)生登錄對(duì)話框輸入學(xué)生的基本信息,然后點(diǎn)擊確定,然后寫入學(xué)生管理對(duì)話框。首先應(yīng)建立一個(gè)名為Student的類,該類的聲明如下class Student private:int StuNum;CString StuNam;CString StuSex;int StuAge;public:Student();virtual Student();CStringArray a_StuNum;CStringArray a_StuNam;CStringArray a_StuSex;CStringArray a_StuAge;/讀取和設(shè)置成員變量int GetStuNum();void SetStuNum(int iStuNum);CString GetStuNam();void SetStuNam(CString cStuNam);CString GetStuSex();void SetStuSex(CString cStuSex);int GetStuAge();void SetStuAge(int iStuAge);/數(shù)據(jù)庫操作int HaveName(CString cStuNam);void sql_insert(); /向數(shù)據(jù)庫中插入一行void sql_findSno(CString cCid); /以學(xué)號(hào)查詢void sql_findSname(); /以姓名查詢 void sql_update(CString b); /修改數(shù)據(jù)庫 void sql_delete(CString a); /刪除數(shù)據(jù)庫;說明:該類具有四個(gè)私有變量StuNum,StuNam,StuSex,StuAge,分別記錄學(xué)生的學(xué)號(hào),姓名,性別,年齡。由于私有函數(shù)不能直接訪問,故需要編寫對(duì)應(yīng)的成員函數(shù),void SetStuNum(int iStuNum),SetStuNam(CString cStuNam),SetStuSex(CString cStuSex),SetStuAge(int iStuAge),并把從外界獲得的數(shù)據(jù)賦給私有變量。還需要編寫關(guān)于數(shù)據(jù)庫操作的函數(shù),例如數(shù)據(jù)庫的插入函數(shù)void sql_insert();/數(shù)據(jù)庫插入void Student:sql_insert()/連接數(shù)據(jù)庫ADOConn m_AdoConn;m_AdoConn.OnInitADOConn();/設(shè)置INSERT語句_bstr_t vSQL;CString strStuNum;strStuNum.Format(%d, StuNum);CString strStuAge;strStuAge.Format(%d, StuAge);vSQL = INSERT INTO Students (Cid, Cname, Csex, Cage, Cdept) VALUES( + strStuNum + , + StuNam + , + StuSex + , + strStuAge + , 計(jì)算機(jī));/執(zhí)行INSERT語句m_AdoConn.ExecuteSQL(vSQL);/斷開與數(shù)據(jù)庫的連接m_AdoConn.ExitConnect();說明:這個(gè)函數(shù)可以把Student類中的私有變量對(duì)應(yīng)加到數(shù)據(jù)庫之中?,F(xiàn)在還需要把對(duì)話框中用戶輸入的數(shù)據(jù)通過后臺(tái)傳入類Student中的私有變量,應(yīng)該先給對(duì)話框中的編輯框建立類向?qū)?,如下圖:并給編輯框加上對(duì)應(yīng)的變量名現(xiàn)在需要給學(xué)生登記對(duì)話框中的確定按鈕加上如下代碼:void MyDlg_Stu_Reg:OnOK() / TODO: Add your control notification handler code hereUpdateData(TRUE);/int StuNum,StuAge;/CString StuNam,StuSex;Student stu;stu.SetStuNum(m_Cid);stu.SetStuAge(m_Cage);stu.SetStuNam(m_Cname);stu.SetStuSex(m_Csex);if (m_Cname = )MessageBox(請(qǐng)輸入學(xué)生姓名);return;if (cCid = ) /插入數(shù)據(jù)if (stu.HaveName(m_Cname) = 1)MessageBox(m_Cname);MessageBox(當(dāng)前顧客已經(jīng)存在,請(qǐng)重新輸入顧客姓名);return;elsestu.sql_insert();else/更新數(shù)據(jù)if (m_Cname != cCname & stu.HaveName(m_Cname) = 1)MessageBox(當(dāng)前顧客已經(jīng)存在,請(qǐng)重新輸入顧客姓名);return;elsestu.sql_update(cCid);/關(guān)閉對(duì)話框CDialog:OnOK();到此為止即可以實(shí)現(xiàn)從對(duì)話框向數(shù)據(jù)庫中增加數(shù)據(jù),其他所有功能,添加,刪除,修改,查詢的處理方法與這個(gè)大同小異,就不多做敘述了。3.2 數(shù)據(jù)庫設(shè)計(jì)3.2.1 建立一個(gè)新的數(shù)據(jù)庫打開SQLserver2000的企業(yè)管理器,在數(shù)據(jù)庫里增添一個(gè)新的數(shù)據(jù)庫,如下圖:3.2.2 建立一個(gè)新的表設(shè)計(jì)表的屬性,如下圖:填寫表的內(nèi)容,如下圖:3.2.3 數(shù)據(jù)庫的鏈接本程序采用ADO接口來實(shí)現(xiàn)數(shù)據(jù)庫和MFC的鏈接首先需要給工程中添加新的關(guān)于ADO的組件,添加方法為:工程添加到工程Components and Controls,并添加下面三個(gè)控件:Microsoft DataCombo Control,version 6.0 (OLEDB)Microsoft DataGrid Control,version 6.0 (OLEDB)Microsoft DataList Control,version 6.0 (OLEDB)如下圖所示:添加成功后,控件工具條會(huì)新增四個(gè)工具,如下圖需要再添加一個(gè)名為ADOConn.cpp和ADOConn.h的文件,并在ADOConn.h中添加下列代碼:#import c:Program FilesCommon FilesSystemadomsado15.dll no_namespace rename(EOF,adoEOF) rename(BOF,adoBOF)點(diǎn)擊ADODC控件的屬性,鏈接數(shù)據(jù)庫,如下圖:四、系統(tǒng)的功能4.1系統(tǒng)的主界面主界面代碼詳見:計(jì)算機(jī)學(xué)生管理系統(tǒng)Dlg.cpp4.2 學(xué)生管理模塊4.2.1 學(xué)生登記界面4.2.2 學(xué)生查詢界面4.2.3 學(xué)生刪除界面4.3 教師管理模塊4.3.1 教師登記界面4.3.2 教師查詢界面4.3.3 教師刪除界面 4.4 成績管理模塊4.4.1 成績登記界面4.4.2 成績查詢界面4.4.3 成績刪除界面五、全文總結(jié)與體會(huì)一周的課設(shè)感覺每天的都過的特別的充實(shí),記得課設(shè)的第一天,我基本上是一頭霧水,根本不知道如何下手,看著老師給的例子和書上的例子,那無數(shù)張表,無數(shù)個(gè)對(duì)話框,還有那寫密密麻麻的代碼,我頭皮發(fā)麻,不知道自己在短短的一周內(nèi)真的能做完這么多不,萬事開頭難,我硬著頭皮去一點(diǎn)點(diǎn)的研究,去翻書,去查資料,去問王老師。開始不斷的自己嘗試,一個(gè)功能一個(gè)功能的實(shí)現(xiàn)。我記得我首先實(shí)現(xiàn)的功能是在MFC上顯示一張數(shù)據(jù)庫里的表,當(dāng)我把表成功的顯示了時(shí),我心里充滿了成績感,下決心
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度木材綜合利用技術(shù)研發(fā)合同樣本7篇
- 2025年加盟商店面維護(hù)協(xié)議
- 2025版巡游出租車特許經(jīng)營合同修訂版五3篇
- 2025版家居建材銷售合同終止與綠色環(huán)保認(rèn)證協(xié)議
- 2025年度船舶港口日常保潔與維護(hù)服務(wù)合同3篇
- 五氧化二釩項(xiàng)目評(píng)價(jià)分析報(bào)告
- 二零二五年度能源合同解除協(xié)議
- 二零二五年度出租車租賃合同司機(jī)休息區(qū)域與設(shè)施協(xié)議
- 二零二五年度海域使用權(quán)租賃及海洋資源綜合利用技術(shù)服務(wù)合同
- 二零二五年度股東變更后的董事會(huì)組成與授權(quán)協(xié)議
- 中國聯(lián)合網(wǎng)絡(luò)通信有限公司招聘筆試題庫2024
- 【社會(huì)工作介入精神障礙社區(qū)康復(fù)問題探究的文獻(xiàn)綜述5800字】
- 節(jié)前停工停產(chǎn)與節(jié)后復(fù)工復(fù)產(chǎn)安全注意事項(xiàng)課件
- 設(shè)備管理績效考核細(xì)則
- 中國人民銀行清算總中心直屬企業(yè)2023年招聘筆試上岸歷年典型考題與考點(diǎn)剖析附帶答案詳解
- (正式版)SJT 11449-2024 集中空調(diào)電子計(jì)費(fèi)信息系統(tǒng)工程技術(shù)規(guī)范
- 人教版四年級(jí)上冊(cè)加減乘除四則混合運(yùn)算300題及答案
- 合成生物學(xué)技術(shù)在生物制藥中的應(yīng)用
- 消化系統(tǒng)疾病的負(fù)性情緒與心理護(hù)理
- 高考語文文學(xué)類閱讀分類訓(xùn)練:戲劇類(含答案)
- 協(xié)會(huì)監(jiān)事會(huì)工作報(bào)告大全(12篇)
評(píng)論
0/150
提交評(píng)論