版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、教學管理系統(tǒng)系統(tǒng)設(shè)計設(shè)計目標減輕教學日常信息管理的負擔,方便學生、教師查詢信息和學校對所有信 息的管理。以簡單便捷的操作獲取詳盡的信息。設(shè)計思路在日常的教學管理活動中主要涉及:1、教職工和學生的信息管理2、學生的成績管理、查詢、統(tǒng)計3、教師查詢自己教授學生的信息和成績的錄入修改4、各門課程的安排和信息查詢對日常教學管理活動的分析后,對各種信息統(tǒng)一規(guī)范整理,實現(xiàn)各種信息 的自動管理。為便于信息的查詢,找出各種信息的關(guān)聯(lián)性,根據(jù)各種需求 設(shè)計出合理的報表。在管理上詳細區(qū)分學生、教師、管理員三者各自擁有 的權(quán)限,和他們不同的需求,仔細考慮他們的不同點,合理整理信息,確 保各自的需求得到最大化滿足功能
2、模塊主要分為四大模塊:1、用戶賬戶的區(qū)分和管理2、學生系統(tǒng)3、教師系統(tǒng)4、管理員系統(tǒng)其詳細功能如圖:教學管理系統(tǒng)用 戶 賬 戶 管 理辛學生 系統(tǒng)管理員系統(tǒng)I個課教選刪各各人程師擇除科科信信信課所成成息息息程選績績查查查課查分詢詢詢程詢布個教教成成人授授績績信課學添修息程生加改查信信詢息息添查添查添查各各加詢加詢加詢科科修學修課修教成成改生改程改師績績刪信刪信刪信管報除息除息除息理表數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫需求分析1)信息需求:(1) 學生信息:學號、姓名、性別、出生日期、入學成績、所在系 號。(2) 教職工信息:職工號、姓名、性別、出身年月、所在系號、職 稱、專業(yè)及教學方向。(3) 系的基本信息:系
3、號、系名稱、系的簡介。(4) 課程信息:課程號、課程名稱、任課教師號、學時、學分、上 課時間、上課地點、考試時間。(5) 成績信息:學號、課程號、平時成績、考試成績、總評成績。2)處理需求:(1) 學生基本信息管理 新生信息錄入。 學生信息修改:按學號查詢出某學生的信息并做信息修改。* 學生轉(zhuǎn)學(轉(zhuǎn)入和轉(zhuǎn)出) ,學生畢業(yè)等。畢業(yè)和轉(zhuǎn)學的學生有關(guān)信 息存儲到歷史庫中。(2) 系基本信息管理:系的基本信息輸入、修改、刪除(3) 課程信息管理:課程信息的輸入、修改、刪除(4) 教職工信息管理:教職工信息的輸入、修改、刪除(5) 選課管理:每學期所選課程的學分不能超過 15 分。(創(chuàng)建觸發(fā)器) 學生可
4、以同時選修一門或多門課程。 可以同時為多個學生選修某一門或某幾門課程。 刪除和修改選課信息。(6) 成績管理(視圖)按課程輸入和修改成績。 (查詢選該門課程的學生) 按學生輸入和修改成績。 (查詢該學生所選的課程)(7)信息查詢 按學號、姓名、系號查詢學生基本信息。 按職工號、姓名、系號查詢教職工基本信息。 按系號、系名稱查詢系的基本信息。 按課程號、課程名稱、上課教師姓名查詢課程基本信息。 按學號、學生姓名、課程號、課程名稱、上課教師姓名、系號查詢學 生成績,內(nèi)容包括課程基本情況。若查詢涉及多門課程,則按課程分組。 每門課程按總評成績從高分到低分給出選修該門課程的所有學生的成績 (平時成績、
5、考試成績和總評成績) 。(8)統(tǒng)計報表 成績登記表,內(nèi)容包括課程基本信息(課程號、課程名稱、任課教師 號、學時、學分、上課時間、上課地點、考試時間) 、選課學生名單(學 號、姓名、性別) ,每個學生的平時成績(空格) 、考試成績(空格)和總 評成績(空格) ,按學號排序:順序輸出所有課程的成績登記表。 按課程號、課程名稱、教師姓名輸出對應課程的成績登記表。* 按系號輸出對應課程的成績登記表(本系所有教師擔任的課程) 。 成績報表, 內(nèi)容包括課程基本信息 (課程號、 課程名稱、 任課教師號、 學時、學分、上課時間、上課地點、考試時間) ,選課學生名單(學號、 姓名、 性別),每個學生的平時成績、
6、 考試成績和總評成績, >=90 分、>=80 分、>=70分、 >=60分及不及格學生的人數(shù)及比例,按學號排序:順序輸出所有課程的成績報表。 (報表格式自己訂制,可以參考學校 的系統(tǒng)的輸出格式)按課程號、課程名稱、教師姓名輸出對應課程的成績報表。 * 按系號輸出對應課程的成績報表(本系所有教師擔任的課程)概念結(jié)構(gòu)設(shè)計表的設(shè)計課程(課程號,課程名,職工號,學時,學分,上課時間,上課地點,考 試時間)主碼:課程號 外碼: 職工號Course(Cno,Cname,Tno,Cperiod,Ccredit,Cbeigan,Caddress,Cexamtime)系(系號,系名,系
7、簡介)主碼: 系號Dept(Dno,Dname,Dintro) 學生(學號,姓名,性別,出生日期,入學成績,系號)主碼:學號 外碼:系號Student(Sno,Sname,Ssex,Sbirth,Senrolgrade,Dno)教職工(職工號,姓名,性別,出生日期,職稱,專業(yè)級教學方向,系號) 主碼:職工號 外碼:系號Teacher(Tno,Tname,Tsex,Tbirth,Tjodtitle,Tprofes sion,Dno)選課(學號,課程號,平時成績,考試成績,總成績) 主碼:學號,課程號 外碼:學號,課程號 .SC(Sno,Cno,Gordinary,Gexam,Gsum)表的關(guān)系圖
8、數(shù)據(jù)庫結(jié)構(gòu):課程表:CREATETABLECourse (Cno varchar ( 12) NOT NULL PRIMARYKEYCHECK( CnoLIKE '0-90-90-90-90-90-90-90-90-90-90-90-9')Cnamevarchar ( 10)NULL,CperiodsmallintNULL,CcreditsmallintNULL,Cbeiganvarchar ( 10)NULLCHECK( Cbeigan LIKE '0-90-9-0-90-90-90-9-0-90-9' ),Caddress varchar ( 20)NULL
9、,Cexamtime varchar ( 2)NULL,Tno varchar ( 12)NULLREFERENCETSeacher (Tno)ON UPDATECASCADEON DELETE CASCAD,E)系表:CREATETABLEDept (Dno varchar (12) NOT NULL PRIMARYKEYCHECK( DnoLIKE '0-90-90-90-90-90-90-90-90-90-90-90-9' )>Dnamevarchar (20) NULL,Dintrontext NULL,)學生表:CREATETABLEStudent (Sno v
10、archar (12) NOT NULL PRIMARYKEYCHECK( SnoLIKE '0-90-90-90-90-90-90-90-90-90-90-90-9' )>Snamevarchar (10)NULL,Ssexchar (2)NULLCHECK( Ssex = ' 男' ORSsex = '女' ),SbirthDATETIMENULL,Senrolgrade smallintNULL,CHECK( Senrolgrade >= 0 ),Dno varchar (12) NULL REFERENCEDSept ( Dn
11、o)ON UPDATECASCADEON DELETE CASCAD,E)職工表:CREATETABLETeacher (Tno varchar (12) NOT NULL PRIMARYKEYCHECK( TnoLIKE '0-90-90-90-90-90-90-90-90-90-90-90-9' )Tnamevarchar (10)NULL,Tsexchar (2)NULLCHECK( Tsex= ' 男' ORTsex = '女' ),TbirthDATETIMENULL,Tjobtitlevarchar (20)NULL,Tprofess
12、ionvarchar (20)NULL,Dnovarchar (12)NULL REFERENCEDSept ( Dno)ON UPDATECASCADEON DELETE CASCAD,E )學課和成績表:CREATETABLESC(Snovarchar (12)NOT NULL REFERENCEStudent (Sno),Cno varchar (12)Gordinary smallintGexam smallintNOT NULL REFERENCECSourse ( Cno),NULL CHECK( Gordinary >=0 ANDGordinary <=100 ),N
13、ULL CHECK( Gexam>=0 ANDGexam<=100 ),Gsum AS ( Gordinary *+ Gexam*,PRIMARYKEY( Sno, Cno),)創(chuàng)建的存儲過程:對 Dept 、 Student 、 Teacher 、Course 表的刪除 CREATEPROCdeleteByNoNovarchar ( 12),type smallint = 1ASbegin transactionIF type = 1BEGINDELETEFROMDeptWHEREDno = No;ENDIF type = 2BEGINDELETEFROMTeacherWHERE
14、Tno = NoENDIF type = 3BEGINDELETEFROMStudentWHERESno = NoENDIF type = 4BEGINDELETE FROM CourseWHERE Cno = NoENDCOMMIT添加系信息:CREATEPROCInsertDeptDnovarchar (12), Dnamevarchar ( 20), Dintro ntextASBEGIN TRANSACTIONINSERT INTO DeptVALUES( Dn,oDnam,eDintro )COMMIT添加學生信息:CREATEPROCInsertStudentSnovarchar
15、(12), Snamevarchar ( 10), Ssex char (2), Sbirth datetime , Senrolgrade smallint = 0 , Dnovarchar (12)ASBEGIN TRANSACTIONINSERT INTO StudentVALUES( Sno, Snam,eSsex, Sbirth , Senrolgrade , Dno)COMMIT添加課程信息:CREATEPROCInsertCourseCnovarchar (12), Cnamevarchar ( 20), Cperiod smallint = 0 ,Ccredit Smallin
16、t = 0, Cbeigan varchar ( 10), Caddress varchar ( 20), Cexamtime varchar ( 2), Tno varchar (12)ASBEGIN TRANSACTIONINSERT INTO CourseVALUES( Cn,oCnam,eCperiod,Ccredit, Cbeigan, Caddress, Cexamtime, Tno)COMMIT添加職工信息:CREATE PROC InsertTeacherTno varchar(12),Tname varchar(10),Tsex char(2),Tbirth datetime
17、,Tjobtitle varchar(20),Tprofession varchar(20),Dno varchar(12)ASBEGIN TRANSACTIONINSERT INTO TeacherVALUES(Tno,Tname,Tsex,Tbirth,Tjobtitle,Tprofession,Dno)COMMIT創(chuàng)建的視圖:CREATE VIEW ChooseCourse (Sno,Sname,Cno,Cname,Ccredit)ASSELECT ,FROM Student,Course,SCWHERE = AND =CREATE VIEW Score(Sno,Sname,Cno,Cn
18、ame,Gordinary,Gexam,Gsum) ASSelect ,Sname,Cname,Gordinary,Gexam,GsumFrom Student,Course,SCWhere = AND =創(chuàng)建的觸發(fā)器Create trigger insertchoose on SCFOR insertasdeclare i int, Sno varchar(12) select Sno = SnoFrom inserted select i=sum(Ccredit) from ChooseCourse where = Sno if(i>15) beginROLLBACK TRANSAC
19、TIONRAISERROR(你選修的學分大于 15學分,請確認后選課,16,1)END程序的詳細設(shè)計一、數(shù)據(jù)庫操作類 ADOCoonenum Type CSTRING,INT1,;class ADOConnpublic:ADOConn();virtual ADOConn();void OnInitDBConnect();_RecordsetPtr& GetRecordSet(_bstr_t bstrSQL);ProcNmae,CString*_RecordsetPtr& ExcuteStoreProc(CStringParameters,CString* Values,Type
20、 *type);BOOL ExecuteSQL(_bstr_t bstrSQL);void ExitConect();_ConnectionPtr GetConnection();private:_ConnectionPtr m_PConnection;_RecordsetPtr m_PRecordPtr;ADOConn:ADOConn()OnInitDBConnect();ADOConn:ADOConn()ADOConn:ExitConect();void ADOConn:OnInitDBConnect():CoInitialize(NULL);try("");_bstr
21、_t strConnect = "Provider=SQLOLEDB;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ljx;Data Source=(local)"m_PConnection->Open(strConnect,"","",adModeUnknown);catch(_com_error e)AfxMessageBox();_RecordsetPtr& ADOConn:GetRecordSet(_bstr_t bstr
22、SQL)tryif(m_PConnection = NULL)OnInitDBConnect();(_uuidof(Recordset);m_PRecordPtr->Open(bstrSQL,(),adOpenDynamic,adLockOptimisti c,adCmdText);catch(_com_error e)AfxMessageBox();return m_PRecordPtr;BOOL ADOConn:ExecuteSQL(_bstr_t bstrSQL)tryif(m_PConnection = NULL)OnInitDBConnect();m_PConnection -
23、>Execute(bstrSQL,NULL,adCmdText);return TRUE;catch(_com_error e)AfxMessageBox();return FALSE;void ADOConn:ExitConect()if(m_PRecordPtr != NULL)();m_PConnection->Close();:CoUninitialize();_RecordsetPtr& ADOConn:ExcuteStoreProc(CString ProcNmae,CString* Parameters,CString* Values,Type *type)_
24、CommandPtr pCmd = NULL;tryif(m_PConnection = NULL)OnInitDBConnect();(_uuidof(Command);(_uuidof(Recordset);pCmd->ActiveConnection = m_PConnection; pCmd->CommandType = adCmdStoredProc; pCmd->CommandText = _bstr_t(ProcNmae); pCmd->Parameters->Refresh();while(*Parameters != "0")
25、switch(*type)case CSTRING: pCmd->Parameters->Item_variant_t(_bstr_t(*Parameters)->V alue = _variant_t(*Values);Parameters+;Values+;type+;break;case INT1:CString str = *Values;int mm = atoi(str);pCmd->Parameters->Item_variant_t(_bstr_t(*Parameters)->V alue = _variant_t(long)mm);Para
26、meters+;Values+;type+; break;default: break;m_PRecordPtr = pCmd->Execute(NULL,NULL,adCmdStoredProc); catch(_com_error e) AfxMessageBox();();return m_PRecordPtr;_ConnectionPtr ADOConn:GetConnection() if(m_PConnection = NULL) OnInitDBConnect();return m_PConnection;二、登陸界面響應登陸按鈕的消息:void CMyDlg:OnLogi
27、n() ormat("%d",m_Grade);t ype4 = INT1; str5 = m_Dno;t ype5 = CSTRING;void CAddStudent:GetString(CString *str)str0 = m_Sno;str1 = m_Name; str2 = Sex;str3 = m_Sbirth; str4.Format("%d",m_Grade);str5 = m_Dno;void CAddStudent:SetWindowCString(CString *Info)i f(Info = NULL)return;GetDl
28、gItem(IDC_SNO)->SetWindowText(Info0); GetDlgItem(IDC_SNAME)->SetWindowText(Info1);i f(Info2 = "男 ")(1); (CButton*)GetDlgItem(IDC_SEX2)->SetCheck(0); Sex = " 男 "else(0); (CButton*)GetDlgItem(IDC_SEX2)->SetCheck(1); Sex = " 女 " GetDlgItem(IDC_SBIRTH)->SetWi
29、ndowText(Info3);GetDlgItem(IDC_GRADE)->SetWindowText(Info4); GetDlgItem(IDC_DNO)->SetWindowText(Info5); t his->Info = NULL;void CAddStudent:SetCString(CString *info)t his->Info = info;主程序添加功能的實現(xiàn):void CAdminStudent:OnAdd()strVal;str +="rn"str += " 性別 "str += m_Rec->
30、GetCollect(_T("Ssex").bstrVal;str +="rn"str += " 出生日期: " data=m_Rec->GetCollect(_T("Sbirth"); birth= COleDateTime(data);(_T("%d-%d-%d"),(),(),();str += Sno;str +="rn"str += " 入學成績: "("%d",m_Rec->GetCollect(_T("
31、;Senrolgrade").bstrVal);str += Sno;str +="rn"str += " 所在系號: "str += m_Rec->GetCollect(_T("Dno").bstrVal;MessageBox(str);) 修改功能( UPDAT)E需要的對話框前面已經(jīng)設(shè)計 ( CAddStudent )( CGetSno) 主程序添加的代碼:void CAdminStudent:OnUpdate()strVal;Info2m_Rec->GetCollect(_T("Ssex&quo
32、t;).bstrVal;data=m_Rec->GetCollect(_T("Sbirth");birth= COleDateTime(data);(_T("%d-%d-%d"),(),(),();Info3 = (10); ("%d",m_Rec->GetCollect(_T("Senrolgrade"). bstrVal);Info4 = Sno;Info5m_Rec->GetCollect(_T("Dno").bstrVal;CAddStudent ADdlg;BOOL m_bool = FALSE;CString sql = "UPDATE Student SET "(Info);if() = IDOK)(G
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 裝修垃圾運輸協(xié)議書模板
- 某零售店員工激勵的二十大法則
- 個人錢幣轉(zhuǎn)讓合同范例
- 大門維修合同范例
- 游戲陪玩合同范例
- 安全承包合同范例
- 連砂石購銷合同范例
- 還款j結(jié)清合同范例
- 商品樓裝修合同范例
- 郊區(qū)建筑施工合同范例
- 信息經(jīng)濟學重點難點
- 2023-2024學年貴州省貴陽市南明區(qū)四年級數(shù)學第一學期期末含答案
- 金融服務營銷PPT完整全套教學課件
- 經(jīng)濟博弈論(謝織予)課后答案及補充習題答案
- 國開電大2022年春季期末考試《園產(chǎn)品貯藏技術(shù)》試題(試卷代號2713)
- 有機波譜分析考試題庫及答案1
- 2023海南省圖書館公開招聘財政定額補貼人員15人(一)模擬備考預測(共1000題含答案解析)綜合試卷
- 導游考試指南:一個月過北京導游考試
- 跨境電商平臺認知Lazada
- 辦公樓VRV多聯(lián)空調(diào)與中央空調(diào)系統(tǒng)方案比較
- GB/T 33609-2017軟質(zhì)泡沫聚合材料滯后損失試驗方法
評論
0/150
提交評論