選修課程管理系統(tǒng)_第1頁
選修課程管理系統(tǒng)_第2頁
選修課程管理系統(tǒng)_第3頁
選修課程管理系統(tǒng)_第4頁
選修課程管理系統(tǒng)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、. 成 績09信計2011-2012(一)數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計設(shè)計題目 選修課程管理系統(tǒng) 設(shè)計時間 2011.12.29至 2012.1.4 學(xué)生姓名 沈悅璐 學(xué)生學(xué)號 20090403309 所在班級 09信計3班 指導(dǎo)教師 劉風華 徐州工程學(xué)院數(shù)學(xué)與物理科學(xué)學(xué)院目錄一、緒論.3二、需求分析.3三、概念模型設(shè)計.4 3.1、用E-R圖設(shè)計信息模型4 3.2、設(shè)計相應(yīng)關(guān)系模型,確定數(shù)據(jù)庫結(jié)構(gòu)4 3.3、設(shè)計應(yīng)用系統(tǒng)的系統(tǒng)結(jié)構(gòu)圖,確定系統(tǒng)結(jié)構(gòu)4 3.4、觸發(fā)器,存儲過程.4四、邏輯結(jié)構(gòu)設(shè)計.5五、物理設(shè)計6六、實驗數(shù)據(jù)示例:測試階段76.1、輸入數(shù)據(jù)設(shè)計7 6.1.1、輸入數(shù)據(jù)設(shè)計7 6.1

2、.2、插入教師信息9 6.1.3、插入課程信息10 6.1.4、插入選課信息11 6.2、執(zhí)行數(shù)據(jù)操作設(shè)計12 6.2.1、基本select語言的使用12 6.2.2、模糊查詢like語句的使用13 6.2.3、統(tǒng)計函數(shù)count的使用13. 6.2.4、對數(shù)據(jù)庫中的數(shù)據(jù)進行操作14 6.2.5、觸發(fā)器的設(shè)計,實現(xiàn)表間關(guān)聯(lián)字段修改時的完整性問題.16 6.2.6、存儲過程的設(shè)計,根據(jù)需要可以創(chuàng)建帶參數(shù)的存儲過程,并用語句調(diào)用.17七、總結(jié).19選修課程管理系統(tǒng)一、緒論選修課是指學(xué)校各部門開設(shè)的面向全校學(xué)生選修的課程。選修課的開設(shè)是基于社會對復(fù)合型人才的需求,旨在加強大學(xué)生人文素質(zhì)和科學(xué)素質(zhì)的養(yǎng)

3、成和提高,培養(yǎng)全面發(fā)展的高素質(zhì)人才。要對學(xué)生的公共選修課進行管理,每學(xué)期由教務(wù)處依據(jù)教學(xué)計劃列出所開設(shè)的選修課程,學(xué)生自主選課,教務(wù)處根據(jù)選課情況進行調(diào)整,最后確定選修各門課程的學(xué)生名單,并對選修課進行排課和對選修課成績進行登記??稍O(shè)置學(xué)生可選修的課程范圍以及選修的約束條件??芍付ǚ秶鷥?nèi)的學(xué)分約束及課程門數(shù)約束,可指定選修課教師的開設(shè)班級的約束條件,開設(shè)班級的人數(shù)限制。約束條件將作為學(xué)生在網(wǎng)上選課審核的標準。應(yīng)實時顯示選課沖突信息。選修課管理系統(tǒng)是一個面向?qū)W校教務(wù)管理人員、教師和學(xué)生并為其提供服務(wù)的管理系統(tǒng)。由于各個學(xué)校的管理體制不同,使得開發(fā)一個通用的選修課管理系統(tǒng)異常困難。同時,當管理方式

4、改變時,也要求管理軟件做相應(yīng)的改變。盡管如此,選課管理中的業(yè)務(wù)仍然存在很多相似之處,具有一般的模式,可以找到一種通用的設(shè)計模型來輔助選修課管理系統(tǒng)的開發(fā)。二、需求分析需求分析的任務(wù)是通過詳細調(diào)查現(xiàn)實世界要處理的對象,充分了解原系統(tǒng)工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。新系統(tǒng)必須充分考慮今后可能的擴充和改變,不能僅僅按當前應(yīng)用需求來設(shè)計數(shù)據(jù)庫。 本系統(tǒng)中學(xué)生包含學(xué)號,姓名等屬性,通過登記系統(tǒng)保存學(xué)生成績的信息。學(xué)生通過分組程序分出個個選修課的學(xué)生名單。課程包含課程號,名稱等屬性。分組信息分出選修課教師,教師包含名稱,教師編號屬性。用戶通過SQL SERVER 2000 的

5、查詢分析器輸入各種操作代碼,管理員可以創(chuàng)建其他管理員權(quán)限,當然,系統(tǒng)管理員可以對所有表進行修改,刪除,增加。系統(tǒng)實現(xiàn)的主要功能有:(1)全校選修計劃課程管理;(2)全校選修開課課程管理;(3)全校學(xué)生選課管理;(4)全校選修課成績管理;三、概念模型設(shè)計數(shù)據(jù)庫需要表述的信息有以下幾種:學(xué)生信息、課程信息、教師信息及三個實體之間的聯(lián)系。1. 用E-R圖設(shè)計信息模型:學(xué)號學(xué)分姓名系名課程名 登記性別課程號課程學(xué)生1 1 學(xué)分 m 1專業(yè)分組電話n姓名教師教師編號圖3-12.設(shè)計相應(yīng)關(guān)系模型,確定數(shù)據(jù)庫結(jié)構(gòu):設(shè)計關(guān)系模型如下:下劃線為關(guān)系的碼 學(xué)生(學(xué)號,姓名,性別,專業(yè))教師(教師編號,姓名,電話,

6、上課地點)課程(課程號,課程名,系名,學(xué)分)選課(學(xué)號,課程號,成績)3.設(shè)計應(yīng)用系統(tǒng)的系統(tǒng)結(jié)構(gòu)圖,確定系統(tǒng)結(jié)構(gòu);輸入系統(tǒng)刪除系統(tǒng)輸出報表查詢系統(tǒng)輸入命令結(jié)果 輸入命令數(shù)據(jù)輸入輸出結(jié)果刪除命令連接數(shù)據(jù)庫 圖3-24. 觸發(fā)器:設(shè)計若干觸發(fā)器,實現(xiàn)表間關(guān)聯(lián)字段修改時的完整性約束問題。存儲過程:設(shè)計若干多表查詢的存儲過程。四、邏輯結(jié)構(gòu)設(shè)計通過E/R模型到關(guān)系模型的轉(zhuǎn)化,可以得到如下關(guān)系模式:1. 學(xué)生基本表:表4-1屬性名稱屬性名類型長度說明學(xué)號STU_NOCHAR5學(xué)號為主碼姓名STU_NAMECHAR8性別STU_SEXCHAR2專業(yè)STU_MAGCHAR202.課程基本表:表4-2屬性名稱屬

7、性名類型長度說明課程號C_NOCHAR5課程號為主碼課程名C_NAMECHAR20系名C_DEPTCHAR20學(xué)分C_POINTCHAR23.選課基本表:表4-3屬性名稱屬性名類型長度說明學(xué)號STU_NOCHAR5學(xué)號為外碼課程號C_NOCHAR5課程號為外碼成績POINTSMALLINT24.教師表:表4-4名稱字段名稱數(shù)據(jù)類型主鍵非空教師編號T_NOChar(4)YesYes姓名T_NAMEVarchar2NoYes電話T_TELBigintNoNo上課地點PLACEVarchar2NoNo每個關(guān)系模式都必須注明主鍵碼。同時,對于從聯(lián)系導(dǎo)出的關(guān)系,登記和分組,使用與之相聯(lián)系的實體集的主健碼

8、作為自己的鍵碼,必須符合外鍵碼約束。五、物理設(shè)計1為了提高在表中搜索元組的速度,在實際實現(xiàn)的時候應(yīng)該基于鍵碼建立索引。以下是各表中建立索引的表項:(1) 學(xué)生(學(xué)號)(2) 教師(教師編號)(3) 課程(課程號)(4) 選課(學(xué)號,課程號)2用SQL實現(xiàn)設(shè)計(1) 建立“選修課程管理系統(tǒng)”數(shù)據(jù)庫,代碼及建庫截圖如下:CREATE DATABASE course ON (NAME =選修課程管理系統(tǒng)_data, FILENAME ='E:數(shù)據(jù)庫課程設(shè)計選修課程管理系統(tǒng)_data.mdf' , SIZE =5MB , FILEGROWTH =1MB) LOG ON(NAME =選修

9、課程管理系統(tǒng)_log, FILENAME ='E:數(shù)據(jù)庫課程設(shè)計選修課程管理系統(tǒng)_log.ldf' , SIZE =1MB , FILEGROWTH =1MB) 圖5-1(2)建立“學(xué)生”表,代碼如下:CREATE TABLE STUDENT (STU_NO char(5) NOT NULL PRIMARY KEY,STU_NAME char(8) ,STU_SEX char(2) ,STU_MAG char(20), )(3)建立“教師”表,代碼如下: CREATE TABLE TEACHER ( T_NO char(10) NOT NULL PRIMARY KEY, T_N

10、AME varchar(50) , T_TEL bigint , PLACE varchar(50) ,)(4)建立“課程”表,代碼如下: CREATE TABLE COURSE( C_NO char(10) NOT NULL PRIMARY KEY, C_NAME char(10) , C_DEPT char(10) , C_POINT char(10) ,)(5)建立“選課”表,代碼如下: CREATE TABLE C_COURSE ( STU_NO char(5) , C_NO char(10) , C_NAME char(10), POINT smallint, Constraint

11、C_COURSE_1 primary key (STU_NO,C_NO) 六、實驗數(shù)據(jù)示例:測試階段1輸入數(shù)據(jù)設(shè)計(1)插入學(xué)生信息: insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('123','沈悅璐','女','計算機') 圖6-1-1insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('224','李超 ','男','機電&#

12、39;) 圖6-1-2insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('298','李瑾','女','英語') 圖6-1-3insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('346','王尤佳','女','會計')圖6-1-4insert into student (STU_NO,STU_NAME,STU_SEX,STU_

13、MAG) values('347','宋麗娜',女 ,'會計') 圖6-1-5insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('361','蘇二飛','男','土木') 圖6-1-6insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('364','李云','男','材料')圖6-

14、1-7insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('556','孫兵','男','人文') 圖6-1-8insert into student (STU_NO,STU_NAME,STU_SEX,STU_MAG) values('612','趙麗','女','物理') 圖6-1-9查詢錄入信息結(jié)果如下圖:圖6-1-10(2)插入教師信息:insert into teacher (T_NO,T_

15、NAME,T_TEL,PLACE) values('156','劉老師','88036721','s203') 圖6-1-11insert into teacher (T_NO,T_NAME,T_TEL, PLACE) values('253','董老師','88036853','n305') 圖6-1-12insert into teacher (T_NO,T_NAME,T_TEL,PLACE) values('192','趙老師',

16、'88036901','e303') 圖6-1-13insert into teacher (T_NO,T_NAME,T_TEL,PLACE)values('196','楊老師','88036612','wn203') 圖6-1-14insert into teacher (T_NO,T_NAME,T_TEL,PLACE) values('110','張老師','88036154','w105')圖6-1-15查詢錄入信息結(jié)果如下圖:圖

17、6-1-16(3)插入課程信息: insert into course (C_NO,C_NAME,C_DEPT,C_POINT) values('103','數(shù)據(jù)庫','計算機','5') 圖6-1-17insert into course (C_NO,C_NAME,C_DEPT,C_POINT) values('107','運籌學(xué)','數(shù)學(xué)','3')圖6-1-18nsert into course (C_NO,C_NAME,C_DEPT,C_POINT) valu

18、es('203','數(shù)理方程','數(shù)學(xué)','5')圖6-1-19insert into course (C_NO,C_NAME,C_DEPT,C_POINT) values('208','控制論','計算機','4')圖6-1-20查詢錄入信息結(jié)果如下圖:圖6-1-214)插入選課信息:insert into c_course (STU_NO,C_NO,C_NAME,POINT) values('123','103','數(shù)據(jù)庫&

19、#39;,'90')圖6-1-22insert into c_course (STU_NO,C_NO,C_NAME,POINT)values('224','107','運籌學(xué)','67')圖6-1-23insert into c_course (STU_NO,C_NO,C_NAME,POINT) values('346','208','控制論','57')圖6-1-24insert into c_course (STU_NO,C_NO,C_NAME,P

20、OINT) values(612,'203,'數(shù)理方程','72')圖6-1-25查詢錄入信息結(jié)果如下圖:圖6-1-262. 執(zhí)行數(shù)據(jù)操作設(shè)計:(1) 基本select語言的使用查詢course表中指定的數(shù)據(jù),代碼及結(jié)果如下圖:圖6-2-1(2)模糊查詢like語句的使用查詢teacher中指定的數(shù)據(jù),代碼及結(jié)果如下圖:、圖6-2-2(3)統(tǒng)計函數(shù)count的使用查詢選課門數(shù)不小于一門的學(xué)生學(xué)號及姓名代碼及結(jié)果如下圖:圖6-2-3(4)對數(shù)據(jù)庫中的數(shù)據(jù)進行操作刪除學(xué)生表中指定的數(shù)據(jù),代碼及結(jié)果如下圖:圖6-2-4更新教師表中的數(shù)據(jù),代碼及結(jié)果如下圖:圖6

21、-2-5(5)觸發(fā)器的設(shè)計,實現(xiàn)表間關(guān)聯(lián)字段修改時的完整性問題。如果某同學(xué)已經(jīng)畢業(yè)或退學(xué)了就可以在STUDENT表中刪除其信息,同時該同學(xué)在COURSE表中的信息應(yīng)該自動被刪除,假設(shè)不存在參照完整關(guān)系。實現(xiàn)該功能的觸發(fā)器代碼如下:圖6-2-6禁止刪除學(xué)生表中數(shù)據(jù)的觸發(fā)器:圖6-2-76)存儲過程的設(shè)計,根據(jù)需要可以創(chuàng)建帶參數(shù)的存儲過程,并用語句調(diào)用。存儲過程的使用可以加快SQL語句的執(zhí)行速度,減少網(wǎng)絡(luò)通信量,并在一定程度上保證系統(tǒng)的安全性。本系統(tǒng)中設(shè)計的存儲過程代碼及結(jié)果如下圖所示:圖6-2-8數(shù)據(jù)庫試運行合格后,數(shù)據(jù)庫開發(fā)工作就基本完成,即可投入正式運行了。但是,由于應(yīng)用環(huán)境在不斷變化,數(shù)據(jù)庫運行過程中物理存儲也會不斷變化,對數(shù)據(jù)庫設(shè)計進行評價、調(diào)整、修改等維護工作是一個長期的任務(wù)。七、總結(jié)兩周的課程設(shè)計結(jié)束了,在這次的課程設(shè)計中不僅檢驗了我所學(xué)習的知識,也培養(yǎng)了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。這個課程設(shè)計采用的是sql語句在數(shù)據(jù)庫查詢分析器里直接查詢。這次課程設(shè)計給了我機會實踐對數(shù)據(jù)庫的操作,讓我對書本上的知識有了一個新的認識。通過自己這次完成數(shù)據(jù)庫的課程設(shè)計,使我對數(shù)據(jù)庫有了更深一步的了解。數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)設(shè)計是一個規(guī)范化的過程,需要遵循以定的方式

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論