教務(wù)系統(tǒng)-數(shù)據(jù)庫-課程設(shè)計.doc_第1頁
教務(wù)系統(tǒng)-數(shù)據(jù)庫-課程設(shè)計.doc_第2頁
教務(wù)系統(tǒng)-數(shù)據(jù)庫-課程設(shè)計.doc_第3頁
教務(wù)系統(tǒng)-數(shù)據(jù)庫-課程設(shè)計.doc_第4頁
教務(wù)系統(tǒng)-數(shù)據(jù)庫-課程設(shè)計.doc_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余13頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

目錄第一章 概述1.1課題研究背景 21.2課題研究意義 21.3系統(tǒng)內(nèi)容簡介21.4開發(fā)環(huán)境3第二章 系統(tǒng)設(shè)計2.1系統(tǒng)功能分析 32.2數(shù)據(jù)庫設(shè)計32.3數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計42.4標(biāo)示符和狀態(tài)42.5使用約定52.6概念結(jié)構(gòu)設(shè)計52.7數(shù)據(jù)庫邏輯5第三章數(shù)據(jù)庫實施 3.1創(chuàng)建表93.2創(chuàng)建必要視圖143.3創(chuàng)建必要觸發(fā)器153.4創(chuàng)建存儲過程16l 使用JAVA連接數(shù)據(jù)庫17l 指導(dǎo)老師檢查17第一章、概述 1、課題的研究背景目前我國各行各業(yè)的信息化建設(shè)開展得如火如荼,這種信息化的發(fā)展已經(jīng)影響到了各學(xué)校。學(xué)校在對學(xué)生進(jìn)行管理時,學(xué)生學(xué)籍的管理一直都是很麻煩的事情,不僅僅管理起來不易修改和更新,而且學(xué)生需要了解本人的信息時,也需要去學(xué)校教務(wù)處找專門人員。由于這些操作的繁瑣性,教務(wù)管理系統(tǒng)的開發(fā)成為各學(xué)校必須的事情,特別是各個高校。一個成功的教務(wù)管理系統(tǒng),應(yīng)該能夠有效地輔助教務(wù)人員工作,提高學(xué)校學(xué)生的學(xué)籍、成績等管理能力,并且不斷完善系統(tǒng),以便更好的幫助學(xué)生、教師、系統(tǒng)管理人員等管理成績、課程、學(xué)籍等。然而目前許多教務(wù)管理系統(tǒng)在使用時,效率低下容易出錯,學(xué)生、教師資料不易整理,大量丟失,這些無疑都已成為管理學(xué)生學(xué)籍、教師信息的障礙。這就要求學(xué)校能夠建立高效的教務(wù)管理系統(tǒng),對學(xué)生的選課、查詢等操作及流程進(jìn)行規(guī)范化管理,簡化業(yè)務(wù)流程,提高工作效率并防止中間的漏洞;迅速、準(zhǔn)確地捕捉用戶要求,并加以高效回應(yīng)。同時需要不斷完善系統(tǒng),增加模塊,更好的滿足用戶需求,簡化教務(wù)人員的管理工作,盡量做到一切信息化。 2、課題的研究意義對于學(xué)校教務(wù)處而言,最主要的是管理學(xué)生的學(xué)籍、管理教師的課程教授。如果使用一般的方法來管理,會比較繁瑣,管理起來也很有可能出錯。為了方便教務(wù)人員的管理工作,提高工作效率,同時為了更好地為學(xué)生、教師提供服務(wù),有必要開發(fā)教務(wù)管理系統(tǒng),使學(xué)校的教務(wù)管理走上信息化之路,克服人為的種種弊端。教務(wù)管理系統(tǒng)的開發(fā)不僅可以減少人力、物力和財力資源的浪費(fèi),更重要的是有助于提高教務(wù)管理的效率。教務(wù)管理人員管理學(xué)生學(xué)籍、管理教師課程教授時是一項復(fù)雜的組織工作,這種復(fù)雜性不僅僅指學(xué)生學(xué)籍變更快,變更人數(shù)眾多,更突出地表現(xiàn)在教務(wù)管理主要對象(即學(xué)生)的數(shù)據(jù)量大,管理起來帶來不便,所以開發(fā)一個實用、高效的教務(wù)管理信息系統(tǒng)是很有必要的 3、系統(tǒng)的內(nèi)容簡介教務(wù)管理系統(tǒng)為教務(wù)管理人員管理日常教務(wù)工作提供了方便。學(xué)生可以使用此系統(tǒng)查詢自己已修完課程的成績、查看自己的學(xué)籍信息、選課等;教師可以使用此系統(tǒng)給學(xué)生所選的課程打分、查看自己的信息及課程安排情況等。因此本系統(tǒng)主要實現(xiàn)學(xué)生功能、教師功能。學(xué)生功能:個人信息查詢、修改;在線選課;密碼修改;網(wǎng)上評教等。教師功能:教學(xué)實施計劃查詢;選課信息查詢、打分;個人信息查詢、修改;密碼修改等。管理員功能:教師信息修改、刪除;管理員信息修改、刪除(有權(quán)限之分);課程信息添加、修改、刪除;學(xué)生學(xué)籍信息查詢、修改、刪除(有權(quán)限之分)。 4、開發(fā)環(huán)境教務(wù)管理系統(tǒng)主要開發(fā)環(huán)境:SQL server數(shù)據(jù)庫第二章、系統(tǒng)設(shè)計1、系統(tǒng)功能分析教務(wù)管理系統(tǒng)主要具有以下功能要求: 學(xué)生功能:個人信息查詢、修改;在線選課,密碼修改;網(wǎng)上評教等。 教師功能:教學(xué)實施計劃查詢;選課信息查詢、打分;個人信息查詢、修改;密碼修改等。 管理員功能:教師信息修改、刪除;管理員信息修改、刪除(有權(quán)限之分);課程信息添加、修改、刪除;學(xué)生學(xué)籍查詢、修改、刪除(有權(quán)限之分)。 2、數(shù)據(jù)庫設(shè)計 數(shù)據(jù)庫設(shè)計是構(gòu)建該系統(tǒng)的關(guān)鍵過程,它直接決定了系統(tǒng)的結(jié)構(gòu)和系統(tǒng)工作的效率。因為幾乎所有的操作都是針對數(shù)據(jù)庫進(jìn)行的,所以在設(shè)計的過程中要有清晰的思路和架構(gòu)意識。數(shù)據(jù)庫管理系統(tǒng)(DBMS)允許用戶在計算機(jī)上創(chuàng)建數(shù)據(jù)庫,并可以執(zhí)行增加,修改,刪除,和檢索數(shù)據(jù)等操作,根據(jù)需求分析我選用了SQLServer。在數(shù)據(jù)庫設(shè)計過程中,不僅僅要了解用戶當(dāng)前的需求,還要考慮到將來可能需增加的功能,并且系統(tǒng)所涉及的各個方面都不可被忽視。3、數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計圖3.2 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計圖4、標(biāo)識符和狀態(tài)本系統(tǒng)采用Microsoft SQL Server 2005為基本開發(fā)工具,數(shù)據(jù)庫名稱為Test。數(shù)據(jù)庫中一共建立了10個表,表名分別為Student(學(xué)生表),Teacher(老師表),SetClass(開設(shè)課程表),AllClass(課程表),PJ(網(wǎng)上評教信息表),Class(行政班級表),SelectClass(選課信息表),Grade(成績信息表),Retest(補(bǔ)考信息表),Repair(重修信息表)。5、使用約定本系統(tǒng)采用Microsoft Server 2003為基本開發(fā)工具,因而程序員或者系統(tǒng)分析員,或者任何想要使用此數(shù)據(jù)庫進(jìn)行操作的人員,需要安裝Microsoft Server 2003,并建立相同的數(shù)據(jù)庫,當(dāng)然可以進(jìn)行聯(lián)機(jī)訪問,這需要安裝相應(yīng)的插件。數(shù)據(jù)庫中所建立的表名如(2.4標(biāo)識符和狀態(tài)),對于表的各個屬性,在下面會有描述。6、概念結(jié)構(gòu)設(shè)計7、數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計根據(jù)數(shù)據(jù)庫結(jié)構(gòu)設(shè)計圖,數(shù)據(jù)庫中一共建立了10個表,表名分別為Student(學(xué)生表),Teacher(老師表),SetClass(開設(shè)課程表),AllClass(課程表),PJ(網(wǎng)上評教信息表),Class(行政班級表),SelectClass(選課信息表),Grade(成績信息表),Retest(補(bǔ)考信息表),Repair(重修信息表)。在設(shè)計中所用到的關(guān)系表及其結(jié)構(gòu)分別如下所示。1、學(xué)生信息表單(Student),如表3.1所示。表3.1 學(xué)生信息表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵SNOvarchar10否學(xué)號YSNAvarchar10否姓名borndatetime否出生年月sexvarchar2否性別Majorvarchar20否專業(yè)Sdeptvarchar20否學(xué)院ClassNovarchar10否行政班級號Originvarchar10否籍貫Nationvarchar10否民族Adressvarchar100否家庭住址PostalCodevarchar10否郵政編號Phonevarchar20否聯(lián)系電話IDVarchar20否身份證號2、教師信息表單(Teacher),如表3.2所示。表3.2 教師信息表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵Tnovarchar10否教師工號YTnavarchar10否教師姓名Degreevarchar10否學(xué)歷Sdeptvarchar20否所屬學(xué)院Titlevarchar20否職稱Borndatetime否出生年月Originvarchar10否籍貫Nationvarchar10否民族Adressvarchar100否家庭住址Phonevarchar20否聯(lián)系電話PostalCodevarchar10否郵政號碼IDvarchar20否身份證號3、開設(shè)課程表(SetClass),如表3.3所示。表3.3 開設(shè)課程表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵外鍵Cnovarchar10否課程號YYTnovarchar10否職工號YClassYearvarcharint否開課年度Semestervarchar10否開課學(xué)期Cdeptvarchar10否開課學(xué)院Classvarchar10否開課班級Cplacevarchar20否上課地點Ctimevarchar20否上課時間Numberint否班級限制人數(shù)Tnavarchar10否任課老師4、課程表(AllClass),如表3.4所示。表3.4 課程表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵Snovarchar10否課程號YSnavarchar10否課程名Cridetint否學(xué)分periodint否學(xué)時Kindvarchar20否類別5、網(wǎng)上評教信息表(PJ),如表3.5所示。表3.5 網(wǎng)上評教信息表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵外鍵PJCodevarchar10否評教編號YTnovarchar10否職工號Cnovarchar10否課程號YPJDatedatetime否評教時間PJAssementvarchar2否評教狀態(tài)6、行政班級表(Class),如表3.6所示。表3.6 行政班級表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵Cnovarchar10否班級號YCnavarchar10否班級名Numberint否班級人數(shù)Adviservarchar10否班主任Instructor varchar10否輔導(dǎo)員Majorvarchar 20否所屬專業(yè)Sdeptvarchar20否所屬學(xué)院7、選課信息表(SelectClass),如表3.7所示。表3.7 選課信息表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵外鍵Snovarchar10否學(xué)號YYCnovarchar10否課程號YY8、成績信息表(Grade),如表3.8所示。表3.8 成績信息表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵外鍵Snovarchar10否學(xué)號YYCnovarchar10否課程號YYScoreint否分?jǐn)?shù)Pointint否績點GetCreditint否所獲學(xué)分IsFailedvarchar 2否掛科情況IsRepairvarchar2否重修情況Timesint否考試次數(shù)9、 補(bǔ)考信息表(Retest),如表3.7所示。表3.7 補(bǔ)考信息表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵外鍵Snovarchar10否學(xué)號YYCnovarchar10否課程號YYTestTimedatetime否考試時間NewGradeint否補(bǔ)考成績IsRepairvarchar2否重修情況10、重修信息表(Repair),如表3.7所示。表3.7 重修信息表單列值數(shù)據(jù)類型數(shù)據(jù)長度可否為空描 述主鍵外鍵Snovarchar10否學(xué)號YYCnovarchar10否課程號YYReYearint否重修年度ReSemetervarchar10否重修學(xué)期ReGradeint否重修成績第三章、數(shù)據(jù)庫實施 本章節(jié)主要包含創(chuàng)建表、添加數(shù)據(jù)和創(chuàng)建必要的視圖、觸發(fā)器和存儲過程等內(nèi)容。1、創(chuàng)建表 考慮到各個表之間的約束條件以及外鍵索引等要求,在創(chuàng)建表的時候應(yīng)當(dāng)按照一定的次序進(jìn)行創(chuàng)建,否則會出現(xiàn)錯誤,還有一種方法是先創(chuàng)建各個基本表,然后在對特定的表添加列和外碼約束,在本報告冊中將采取第二種方法。/* Table: ALLCLASS */* = */create table ALLCLASS( CNA varchar(50) null , CNO varchar(10) not null, CRIDET int null , PERIOD int null , KIND varchar(20) null , constraint PK_ALLCLASS primary key (CNO)go/* = */* Table: TEACHER */* = */create table TEACHER( TNA varchar(10) null , TNO varchar(10) not null, SEX char(2) null , BRON datetime null , DEGREE varchar(10) null , TITLE varchar(20) null , SDEPT varchar(20) null , ORIGIN varchar(10) null , NATION varchar(10) null , ADRESS varchar(100) null , POSTALCODE varchar(10) null , PHONE varchar(20) null , ID varchar(20) null , constraint PK_TEACHER primary key (TNO)go/* = */* Table: CLASS */* = */create table CLASS( CLASSNA varchar(10) null , CLASSNO varchar(10) not null, NUMBER int null , ADVISER varchar(10) null , INSTRUCTOR varchar(10) null , MAJOR varchar(10) null , SDEPT varchar(20) null , constraint PK_CLASS primary key (CLASSNO)go/* = */* Table: SETCLASS */* = */create table SETCLASS( CNO varchar(10) not null, TNO varchar(10) null , CLASSYEAR int null , SEMESTER varchar(10) null , CDEPT varchar(10) null , CLASS varchar(10) null , CPLACE varchar(20) null , CTIME varchar(20) null , NUMBER int null , TNA varchar(10) null , constraint PK_SETCLASS primary key (CNO)go/* = */* Table: SELECTCLASS */* = */create table SELECTCLASS( SNO varchar(10) not null, CNO varchar(10) not null, constraint PK_SELECTCLASS primary key (SNO, CNO)go/* = */* Table: STUDENT */* = */create table STUDENT( SNO varchar(10) not null, SNA varchar(10) null , BRON datetime null , SEX char(2) null , FACE varchar(10) null , CLASSNO varchar(10) null , SDEPT varchar(20) null , MAJOR varchar(20) null , ORIGIN varchar(10) null , NATION varchar(10) null , ADRESS varchar(100) null , POSTALCODE varchar(10) null , PHONE varchar(20) null , ID varchar(20) null , constraint PK_STUDENT primary key (SNO)go/* = */* Table: GRADE */* = */create table GRADE( SNO varchar(10) not null, CNO varchar(10) not null, SCORE float null , POINT float null , GETCREDIT int null , ISFAILED varchar(2) null , ISREPAIR varchar(2) null , TIMES int null , constraint PK_GRADE primary key (SNO, CNO)go/* = */* Table: RETEST */* = */create table RETEST( CNO varchar(10) not null, SNO varchar(10) not null, TESTTIME datetime null , NEWGRADE int null , ISREPAIR varchar(2) null , constraint PK_RETEST primary key (CNO, SNO)go/* = */* Table: REPAIR */* = */create table REPAIR( SNO varchar(10) not null, CNO varchar(10) not null, REYEAR int null , RESEMESTER varchar(10) null , REGRADE int null , constraint PK_REPAIR primary key (SNO, CNO)go/* = */* Table: PJ */* = */create table PJ( PJCODE varchar(10) not null, TNO varchar(10) null , CNO varchar(10) null , PJDATE datetime null , PJASSESMENT char(2) null , constraint PK_PJ primary key (PJCODE)goalter table SETCLASS add constraint FK_SETCLASS_REF_215_TEACHER foreign key (TNO) references TEACHER (TNO)goalter table SETCLASS add constraint FK_SETCLASS_REF_221_ALLCLASS foreign key (CNO) references ALLCLASS (CNO)goalter table SELECTCLASS add constraint FK_SELECTCL_REF_209_STUDENT foreign key (SNO) references STUDENT (SNO)goalter table SELECTCLASS add constraint FK_SELECTCL_REF_212_SETCLASS foreign key (CNO) references SETCLASS (CNO)goalter table STUDENT add constraint FK_STUDENT_REF_232_CLASS foreign key (CLASSNO) references CLASS (CLASSNO)goalter table GRADE add constraint FK_GRADE_REF_516_SELECTCL foreign key (SNO, CNO) references SELECTCLASS (SNO, CNO)goalter table RETEST add constraint FK_RETEST_REF_526_SELECTCL foreign key (SNO, CNO) references SELECTCLASS (SNO, CNO)goalter table REPAIR add constraint FK_REPAIR_REF_521_SELECTCL foreign key (SNO, CNO) references SELECTCLASS (SNO, CNO)goalter table PJ add constraint FK_PJ_REF_410_SETCLASS foreign key (CNO) references SETCLASS (CNO)go2、創(chuàng)建必要視圖/*=視圖= */* = */* view: S_C_C 可選課程視圖 */* = */create view S_C_CASselect SETCLASS.CNO,CNA,CLASSYEAR,TNAFROM SETCLASS,ALLCLASSWHERE SETCLASS.CNO = ALLCLASS.CNOSELECT *FROM S_C_C/* = */* view: STU 學(xué)生信息視圖 */* = */create view STUASselect *FROM STUDENT;SELECT *FROM STU/* = */* view :S_GRADE 學(xué)生選課成績視圖 */* = */create view S_GRADEASselect STUDENT.SNO,CNA,SCOREFROM STUDENT,GRADE,ALLCLASSwhere STUDENT.SNO=GRADE.SNO AND GRADE.CNO=ALLCLASS.CNO SELECT * FROM S_GRADE3、 創(chuàng)建必要觸發(fā)器/* = */* trigger:addstudent 學(xué)生信息中的專業(yè)號不對或者系統(tǒng)中已存在所對應(yīng)學(xué)號的學(xué)生時, 提示錯誤并回滾 */* = */CREATE TRIGGER addstudent ON STUDENT FOR INSERT,UPDATE AS IF(SELECT COUNT(*) FROM CLASS,inserted WHERE CLASS.CLASSNO=inserted.CLASSNO)=0 BEGIN PRINT 未找到該學(xué)生的班級信息,請?zhí)砑酉鄳?yīng)專業(yè)后重試! ROLLBACK END ELSE IF (SELECT COUNT(*) FROM STUDENT,inserted WHERE STUDENT.SNO=inserted.SNO)0 BEGIN PRINT 學(xué)號產(chǎn)生沖突,請核對后重試! ROLLBACK END/* = */* trigger:takecourse 課程選課人數(shù)超過個或者對應(yīng)學(xué)生選課門數(shù)超過門 或者當(dāng)前時間不是選課時間段時,提示錯誤并回滾 */* = */CREATE TRIGGER takecourse ON SELECTCLASS FOR INSERT,UPDATE AS IF(SELECT COUNT(*) FROM SELECTCLASS,inserted WHERE SELECTCLASS.SNO=inserted.SNO)40 BEGIN PRINT 所對應(yīng)課程選課人數(shù)不能超過個! ROLLBACK END ELSE IF (SELECT COUNT(*) FROM STUDENT,inserted WHERE STUDENT.SNO=inserted.SNO)5 BEGIN PRINT 對應(yīng)學(xué)生的選課不能超過門! ROLLBACK END 4、 創(chuàng)建存儲過程 /* = */* proc:GetCourse 查詢所有學(xué)生的選課記錄 */* = */CREATE PROCEDURE seestu(studentno varchar(10)ASbeginSELECT * FROM student WHERE SNO = studentnoENDexec seestu 13201112/* = */* proc:TEACHER_C 查詢教師信息 */* = */CREATE PROCEDURE seetea(teacherno varchar(10)AS beginSELECT * FROM teacher WHERE TNO = t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論