數(shù)據(jù)庫課程設計報告學籍管理系統(tǒng)設計_第1頁
數(shù)據(jù)庫課程設計報告學籍管理系統(tǒng)設計_第2頁
數(shù)據(jù)庫課程設計報告學籍管理系統(tǒng)設計_第3頁
數(shù)據(jù)庫課程設計報告學籍管理系統(tǒng)設計_第4頁
數(shù)據(jù)庫課程設計報告學籍管理系統(tǒng)設計_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

重慶科技學院課程設計報告

院(系):_電氣與信息工程學院_專業(yè)班級:XXX學生姓名:XXX學號:XXX設計地點(單位)______第一實驗樓I515___________設計題目:__________學籍管理系統(tǒng)設計_____________________完成日期:指導教師評語:___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________成績(五級記分制):________________

指導教師(簽字):________________重慶科技學院《數(shù)據(jù)庫原理》課程設計報告PAGE20摘要隨著信息技術的飛速發(fā)展,信息化對學生個人提出了駕馭和掌握最新信息技術的要求;信息化也為提高教學質(zhì)量,提高管理水平,工作效率創(chuàng)造了有效途徑。例如這次課程設計主要設計的是對學籍信息的管理以及操作,方便對于學生信息的管理。學籍管理系統(tǒng)主要采用了SQL2005作為數(shù)據(jù)庫,使用ODBC作為數(shù)據(jù)源,在數(shù)據(jù)庫內(nèi)部實現(xiàn)部分功能時運用的是觸發(fā)器以及存儲過程;而且還可用視圖查看部分信息。關鍵詞:數(shù)據(jù)庫觸發(fā)器存儲過程視圖重慶科技學院課程設計任務書設計題目:學籍管理系統(tǒng)設計學生姓名XXX課程名稱數(shù)據(jù)庫原理課程設計計科2010-03地點I515、I524和計算機自主學習中心起止時間2012.6.25-2012.7.6設計內(nèi)容及要求內(nèi)容:學生根據(jù)本課程設計指導書中的題目,進行設計。(1)學生基本信息系統(tǒng)能夠完成新、老生信息的輸人、修改、插人、刪除等工作??梢园凑仗囟ǖ男畔⑦M行查找,并按照特定的要求進行排序??梢詫仙男畔⑦M行備份,以便日后查詢。可以對學生的信息進行打印輸出。提供詳細的幫助文件和系統(tǒng)維護功能。(2)學生成績管理系統(tǒng)此部分的功能如下:學生成績的輸入、修改、刪除等基本操作。成績的綜合統(tǒng)計功能,包括學生成績按照不同條件進行排名。管理人員可以選擇不同的排序條件,并可以將排序結(jié)果進行打印輸出。計算各班的總分和平均分,并按照平均分將各班成績進行排序。統(tǒng)計不及格考生的信息,根據(jù)條件確定是重修還是補考。學生獎勵統(tǒng)計,自動生成每班獲得獎學金的同學的信息,并可以將獎學金分成不同的等級,以及所得獎學金的數(shù)目。本系統(tǒng)可以在單機上運行,也可以應用在網(wǎng)絡上供在線查詢成績和其他一些學生的信息(此功能選做人提供給學生進行查詢的系統(tǒng)和提供給教務處使用的系統(tǒng),在不同用戶使用時,應該會有不同的使用權(quán)限。提供詳細的幫助文件。要求:按照數(shù)據(jù)庫系統(tǒng)開發(fā)步驟進行數(shù)據(jù)庫概念結(jié)構(gòu)設計、邏輯結(jié)構(gòu)設計、物理結(jié)構(gòu)設計,使學生掌握數(shù)據(jù)庫應用軟件的開發(fā)流程,SQL語句的使用和存儲過程的使用。設計參數(shù)至少5個表結(jié)構(gòu);3個存儲過程;2個觸發(fā)器;3個視圖。進度要求19.1講課 閱讀分析任務書 制訂設計計劃19.2-3需求分析 概念結(jié)構(gòu)設計19.4-5概念結(jié)構(gòu)設計 準備文擋20.1-3 邏輯結(jié)構(gòu)設計 物理結(jié)構(gòu)設計20.4-5 寫文擋 答辯 交設計報告書參考資料1.雷亮等《數(shù)據(jù)庫原理課程設計》指導書2.王珊、薩師煊.《數(shù)據(jù)庫系統(tǒng)概述》(第四版).北京:高等教育出版社.2006。3.C.J.Date著.孟小峰、王珊等譯.《數(shù)據(jù)庫系統(tǒng)導論》(第8版).北京:機械工業(yè)出版社.2007。4.陳根才等.數(shù)據(jù)庫課程設計.浙江.浙江大學出版社.2007其它說明1.本表應在每次實施前一周由負責教師填寫二份,院系審批后交院系辦備案,一份由負責教師留用。2.若填寫內(nèi)容較多可另紙附后。3.一題多名學生共用的,在設計內(nèi)容、參數(shù)、要求等方面應有所區(qū)別。教研室主任:指導教師:雷亮/游明英/張亞軍/裴仰軍2012年06月15日目錄1需求分析 11.1系統(tǒng)目標設計 11.2系統(tǒng)功能分析 11.3功能模塊分析 21.4系統(tǒng)全局數(shù)據(jù)流圖 21.5數(shù)據(jù)字典 32概念結(jié)構(gòu)設計 72.1構(gòu)成系統(tǒng)的實體型 72.2工資管理系統(tǒng)E-R圖 73邏輯結(jié)構(gòu)設計 83.1邏輯結(jié)構(gòu)簡介 83.2關系模型 84物理模型設計 105物理結(jié)構(gòu)設計與功能實現(xiàn) 115.1定義數(shù)據(jù)庫 115.2創(chuàng)建表 115.3創(chuàng)建存儲過程 145.4創(chuàng)建觸發(fā)器 155.5創(chuàng)建視圖 176總結(jié) 197致謝 208參考文獻 211需求分析1.1系統(tǒng)目標設計(1)使得學生的學籍管理工作更加清晰、條理化、自動化。(2)很容易地完成新生信息的輸入、老生信息的備份、畢業(yè)學生的信息可以很容易地保存。(3)當學生需要查詢成績時,可以很簡單地將其需要的信息從數(shù)據(jù)庫中查找出來并可以打印查詢結(jié)果。(4)隨著當今網(wǎng)絡技術的發(fā)展,提供網(wǎng)絡在線查詢功能,可以為畢業(yè)生提供更多的就業(yè)機會。1.2系統(tǒng)功能分析(1)學生基本信息系統(tǒng)能夠完成新、老生信息的輸人、修改、插人、刪除等工作。可以按照特定的信息進行查找,并按照特定的要求進行排序??梢詫仙男畔⑦M行備份,以便日后查詢??梢詫W生的信息進行打印輸出。提供詳細的幫助文件和系統(tǒng)維護功能。(2)學生成績管理系統(tǒng)此部分的功能如下:學生成績的輸入、修改、刪除等基本操作。成績的綜合統(tǒng)計功能,包括學生成績按照不同條件進行排名。管理人員可以選擇不同的排序條件,并可以將排序結(jié)果進行打印輸出。計算各班的總分和平均分,并按照平均分將各班成績進行排序。統(tǒng)計不及格考生的信息,根據(jù)條件確定是重修還是補考。學生獎勵統(tǒng)計,自動生成每班獲得獎學金的同學的信息,并可以將獎學金分成不同的等級,以及所得獎學金的數(shù)目。1.3功能模塊分析根據(jù)系統(tǒng)功能的基本要求,系統(tǒng)的功能模塊設計圖如下圖所示:圖1.1圖1.1功能模塊圖1.4系統(tǒng)全局數(shù)據(jù)流圖系統(tǒng)的全局數(shù)據(jù)流圖,也稱第一層數(shù)據(jù)流圖,是從整體上描述系統(tǒng)的數(shù)據(jù)流,反映系統(tǒng)數(shù)據(jù)的整體流向,給設計者、開發(fā)者和用戶一個總體描述。圖1.2數(shù)據(jù)流圖1.5數(shù)據(jù)字典表1.1學生表基本信息表(student)字段名數(shù)據(jù)類型約束說明Snoint主鍵學號Snamevarchar(10)不為空姓名Sbirthdatetime無出生年月Sidvarchar(20)無身份證號碼Spoliticvarchar(10)無政治面貌Scomedatetime不為空入學時間Sminzuvarchar(10)無民族Sjiguanvarchar(10)無籍貫Saddvarchar(100)無家庭住址Stelvarchar(15)無聯(lián)系電話Smorevarchar(500)無聯(lián)系電話表1.2畢業(yè)生表(graduate)字段名類型約束說明Gnoint主鍵畢業(yè)編號Snoint不為空學號Ghavefloat不為空已修學分Gmorevarchar無說明表1.3教師表(teacher)字段名數(shù)據(jù)類型約束說明Tnoint主鍵教師號Tnamevarchar(10)不為空姓名Sexsymbolchar(2)無性別Tbirthdatetime無出生年月Tidvarchar(20)無身份證號碼Tpoliticvarchar(10)無政治面貌Tcomedatetime無入職時間Tminzuvarchar(10)無民族Tjiguanvarchar(10)無籍貫Taddvarchar(100)無家庭地址Ttelvarchar(15)無聯(lián)系電話Tmorevarchar(500)無說明表1.4院系表(faculty)字段名數(shù)據(jù)類型約束說明Fnoint主鍵院系號FnameVarchar(50)無院系名Fmonsterint無系主任表1.5專業(yè)表(specialty)字段名類型約束說明Spsymbolvarchar(20)不為空專業(yè)代碼Spnamevarchar(50)無專業(yè)名SpmonsterInt無學院Fnoint外鍵專業(yè)主任表1.6班級表(Class)字段名類型約束說明CLsymbolvarchar(10)主鍵班級號CLnamevarchar(50)無班級名CLpeopleint無人數(shù)TnoInt無輔導員SpnoInt外鍵專業(yè)號表1.7課程表(course)字段名類型約束說明Cnoint主鍵,不為空課程號CnameVarchar無課程名Cfirstint無先行課CcreditFloat無學分表1.8宿舍表(Department)字段名類型約束說明Dnoint主鍵宿舍號Dnamevarchar(50)無宿舍名Dpeopleint無人數(shù)表1.9職稱表(Jobtitle)字段名類型約束說明Jsymbolvarchar(10)主鍵職稱代號Jnamevarchar(50)無職稱名稱表1.10獎學金表(Award)字段名類型約束說明Asymbolvarchar(10)主鍵獎學金代號Anamevarchar(50)無獎學金名Amoneyint無金額表1.11性別表(sex)字段名類型約束說明Sexsymbolchar(2)主鍵性別代碼Sexnamechar(2)無性別名表1.12選課表(SC)字段名類型約束說明Snoint主鍵學號Cnoint主鍵課程號Scorefloat無成績morenchar(10)無說明表1.13授課表(TC)字段名類型約束說明Cnoint主鍵課程號Tnoint主鍵教師號

2概念結(jié)構(gòu)設計2.1構(gòu)成系統(tǒng)的實體型由學生學籍系統(tǒng)的數(shù)據(jù)流圖和數(shù)據(jù)字典,抽取出系統(tǒng)的5個主要實體,包括:學生、教師、班級、課程、畢業(yè)生。學生(學號,姓名,出生年月,身份證號碼,政治面貌,入學時間,民族,籍貫,家庭住址,聯(lián)系電話,備注)教師(教師編號,姓名,出生年月,身份證號碼,政治面貌,職稱,入職時間,民族,籍貫,家庭住址,聯(lián)系電話,說明)班級(班級代碼,班級名稱,人數(shù),輔導員)課程(課程號,課程名,先行課,學分)畢業(yè)生(畢業(yè)編號,學號,已修學分,說明)圖2.1工資管理系統(tǒng)E-R圖2.2工資管理系統(tǒng)E-R圖圖2.1工資管理系統(tǒng)E-R圖

3邏輯結(jié)構(gòu)設計3.1邏輯結(jié)構(gòu)簡介邏輯結(jié)構(gòu)設計就是把概念結(jié)構(gòu)設計階段設計好的基本E-R圖轉(zhuǎn)換為與選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。設計邏輯結(jié)構(gòu)一般分為3步進行:(1)將概念結(jié)構(gòu)轉(zhuǎn)換為一般的關系、網(wǎng)狀、層次模型;(2)將轉(zhuǎn)換來的關系、網(wǎng)狀、層次模型向特定DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換;(3)對數(shù)據(jù)模型進行優(yōu)化。3.2關系模型將E-R圖轉(zhuǎn)換為關系模型實際上就是要獎實體型、實體的屬性和實體型之間的聯(lián)系轉(zhuǎn)換為關系模式,這種轉(zhuǎn)換一般遵循如下原則:(1)一個實體型轉(zhuǎn)換為一個關系模式,一個多對多的關系可以轉(zhuǎn)化為一個關系模式;(2)一對多的關系可以融合在其他的相關的關系模式中。將概念結(jié)構(gòu)設計階段設計好的基本E-R圖轉(zhuǎn)換成關系模型,如下所示(以下為主要實體的關系模型): 學生(學號,姓名,性別,寢室代碼,班級代碼,出生年月,身份證號,政治面貌,入學時間,民族,籍貫,家庭住址,電話號碼,獎學金代碼,備注),此為學生實體對應的關系模式。 教師(教師號,姓名,性別,出生年月,身份證號,政治面貌,職稱代碼,學院代碼,入職時間,電話號碼,民族,籍貫,家庭住址,備注),此為教師實體對應的關系模式。 畢業(yè)生(畢業(yè)編號,學號,已修學分,說明),此為畢業(yè)生實體對應的關系模式。 課程(課程號,課程名,先行課,學分,)此為課程實體對應的關系模式。 院系(院系代碼,院系名稱,院系主任),此為院系實體對應的關系模式。 選課(學號,課程號,成績),此為選課關系對應的關系模式。 授課(課程號,教師號),此為授課關系對應的關系模式。

4物理模型設計數(shù)據(jù)庫物理設計是將邏輯設計影射到存儲介質(zhì)上,利用可用的硬件和軟件功能盡可能快地對數(shù)據(jù)進行物理訪問和維護。將生成的概念模型通過PowerDesigner中的GenertatePhysicalDataModel選項轉(zhuǎn)換成物理模型,此物理模型如下圖:圖4.1學生學籍管理系統(tǒng)物理模型5物理結(jié)構(gòu)設計與功能實現(xiàn)5.1定義數(shù)據(jù)庫通過SQL語言進行數(shù)據(jù)庫創(chuàng)建,創(chuàng)建數(shù)據(jù)庫的語句如下:CreatedatabasestudentInfo;5.2創(chuàng)建表創(chuàng)建學生基本信息表(student)createtablestudent(Snointnotnull,Dnointnotnull,CLnointnotnull,Sexsymbolchar(2)notnull,Asymbolvarchar(10)notnull,Gno2intnull,Snamevarchar(10)notnull,Sbirthdatetimenull,Sidvarchar(20)null,Spoliticvarchar(10)null,Scomedatetimenull,Sminzuvarchar(10)null,Sjiguanvarchar(10)null,Saddvarchar(100)null,Stelvarchar(15)null,Smorevarchar(Max)null,constraintPK_STUDENTprimarykeynonclustered(Sno));班級表(Class)createtableClass(CLnointnotnull,Tnointnotnull,Fnointnull,CLnamevarchar(20)null,CLpeopleintnotnull,constraintPK_CLASSprimarykeynonclustered(CLno));學生課程關系表(SC)createtableSC(Snointnotnull,Cnointnotnull,Scorefloatnull,morevarcharnull,constraintPK_SCprimarykey(Sno,Cno));課程表(Course)createtablecourse(Cnointnotnull,Cnamevarchar(50)null,Cfirstintnull,Ccreditfloatnull,constraintPK_COURSEprimarykeynonclustered(Cno));畢業(yè)生表(graduate)createtablegraduate(Gnointnotnull,Snointnotnull,Ghavefloatnotnull,Gmorevarchar(0)notnull,Column_5varchar(Max)null,constraintPK_GRADUATEprimarykeynonclustered(Gno));教師表(teacher)createtableteacher(Tnointnotnull,Jsymbolvarchar(10)notnull,Sexsymbolchar(2)notnull,Fnointnull,Tnamevarchar(10)null,Tbirthdatetimenull,Tidvarchar(20)null,Tpoliticvarchar(10)null,Tcomedatetimenull,Tminzuvarchar(10)null,Tjiguanvarchar(10)null,Taddvarchar(100)null,Ttelvarchar(15)null,constraintPK_TEACHERprimarykeynonclustered(Tno));教師課程關系表(授課)createtable授課(Cnointnotnull,Tnointnotnull,constraintPK_授課primarykey(Cno,Tno));5.3創(chuàng)建存儲過程在學生表中創(chuàng)建插入學生的存儲過程:USE[StudengtInfo]GOCREATEprocedure[dbo].[student_insert]@Snoint,@Snamevarchar(10),@Ssexsymbolchar(2)=null, @Dsymbolchar(10)=null,@CLnovarchar(10)=null,@Sbirthint=null,@Sidvarchar(20)=null,@Spoliticvarchar(20)=null, @Scomedatetime=null, @Sminzuvarchar(10)=null, @Sjiguanvarchar(10)=null, @Saddvarchar(100)=null, @Stelvarchar(15)=null, @Asymbolvarchar(10)=null, @Smorevarchar(500)=nullAsBEGIN ifEXISTS(select*fromstudentwhereSno=@Sno) print('已存在此學號學生') else Insertintostudent values(@Sno,@Sname,@Ssexsymbol,@Dsymbol,@CLno,@Sbirth,@Sid, @Spolitic,@Scome,@Sminzu,@Sjiguan,@Sadd,@Stel,@Asymbol,@Smore) UPDATEdepartmentSETDpeople=Dpeople+1WHEREDsymbol=@DsymbolEND在學生信息表上創(chuàng)建一個刪除學生信息的存儲過程:USE[StudengtInfo]GOCREATEPROCEDURE[dbo].[delete_student] @SnointASBEGIN DELETEFROMstudent WHERESno=@SnoEND在學生信息表上建立一個修改學生部分信息的存儲過程:USE[StudengtInfo]GOCREATEPROCEDURE[dbo].[student_update] @snoint,@CLsymbolvarchar(20), @Snamevarchar(10),@Spoliticvarchar(10)ASBEGIN updatestudentsetSname=@Snamewhere@sno=Sno updatestudentsetCLsymbol=@CLsymbolwhere@sno=Sno updatestudentsetSpolitic=@Spoliticwhere@sno=SnoEND5.4創(chuàng)建觸發(fā)器定義一個BEFORE行級的觸發(fā)器,為學生信息表Ssexsymbol定義完整性規(guī)則“學生性別只能是女或者男”。CREATETRIGGER[dbo].[sex_limit]ON[dbo].[student] FORINSERT,UPDATEASDECLARE@Sexsymbolchar(5)BEGIN select@Sexsymbol=Sexsymbolfrominserted if@Sexsymbolnotin(selectSexsymbolfromsex) begin raiserror('性別不能輸入m或f以外的字符,其中m代表男性。',16,8) rollbacktran endEND定義一個AFTER行級觸發(fā)器,當學生信息表中的Sno發(fā)生變化后就自動在選課表和畢業(yè)生表中發(fā)生相應變化。CREATETRIGGER[dbo].[update_sno]ON[dbo].[student] FORupdateASBEGIN updateSCsetSno=(selectSnofrominserted) whereSno=(selectSnofromdeleted) updategraduatesetSno=(selectSnofrominserted) whereSno=(selectSnofromdeleted)END定義一個AFTER行級觸發(fā)器,在學生信息表中刪除一條記錄后就自動在選課表和畢業(yè)生表中刪除相應信息。CREATETRIGGER[dbo].[student_delete]ON[dbo].[student] FORDELETEASBEGIN deletefromSCwhereSno=(selectSnofromdeleted) deletefromgraduatewhereSno=(selectSnofromdeleted)END5.5創(chuàng)建視圖用獎學金表以及學生表創(chuàng)建一個獲得獎學金的同學的部分信息,代碼如下:SELECTdbo.student.SnoAS學號,dbo.student.SnameAS姓名,dbo.award.AnameAS獎學金名,dbo.award.AmoneyAS金額FROMdbo.awardINNERJOINdbo.studentONdbo.award.Asymbol=dbo.student.Asymbol此代碼運行結(jié)果如下圖:圖5.5.1用課程表、選課表以及學生表創(chuàng)建考試不及格學生的視圖,代碼如下:SELECTdbo.student.SnoAS學號,dbo.student.SnameAS姓名,dbo.course.CnameAS課程名,dbo.course.CcreditAS學分,dbo.SC.ScoreAS成績,dbo

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論