版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 計算機科學與技術學部</p><p><b> 數(shù)據(jù)庫課程設計報告</b></p><p> 題 目:學生選課管理系統(tǒng) </p><p> 指導老師: </p><p> 學
2、 號: </p><p> 姓 名: </p><p> 班 級:計科0901班 </p><p> 時 間:2011-12-23
3、 </p><p> 分 數(shù): </p><p><b> 摘 要</b></p><p> 隨著計算機技術的日新月異,極大的推動的各個行業(yè)的信息化進程。各大高校也急需進行信息化改革,以促進教學質量和工作效率快速提升。</p>
4、<p> 本文是在對各大高校全校公開課學生選課情況進行實地調查后,進行詳細分析討論后撰寫的學生選課管理系統(tǒng)數(shù)據(jù)庫設計報告。全文從最初的系統(tǒng)規(guī)劃,到需求分析、概念設計、邏輯設計、物理設計。每一階段都進行了詳細的分析。接下來的實現(xiàn)、運行與維護階段,還進行了對本系統(tǒng)的測試,最后是本次項目開發(fā)的心得和體會以及本文的參考文獻。</p><p> 本系統(tǒng)是采用MVC模式(jsp+javabean+servl
5、et)進行的J2EE企業(yè)級開發(fā),主要功能是對學生選課及相關信息進行管理。較行業(yè)同類產(chǎn)品而言,本系統(tǒng)人機界面設計更加合理、人性化,用戶操作簡單方便。數(shù)據(jù)庫的安全性更高,對用戶訪問權限進行了嚴格控制。數(shù)據(jù)存取速度更快,使用年限更長??梢院芎玫臐M足高校公開課學生選課的要求,極大的提高了學校的工作效率。</p><p> 關鍵字:學生選課管理系統(tǒng);SQL Server;JSP</p><p>&
6、lt;b> 目 錄</b></p><p> 第一章 系統(tǒng)規(guī)劃1</p><p><b> 1.1 引言1</b></p><p> 1.1.1 編寫目的1</p><p> 1.1.2項目背景1</p><p> 1.2 可行性研究的前提1</p&
7、gt;<p> 1.2.1 目標1</p><p> 1.2.2 要求2</p><p> 1.2.3 條件假定和限制2</p><p> 1.2.4 決定可行性的主要因素3</p><p> 1.3 技術可行性分析3</p><p> 1.3.1 技術的支持能力3</p&g
8、t;<p> 1.3.2 技術的優(yōu)勢3</p><p> 1.3.3 技術的難點3</p><p> 1.4 經(jīng)濟可行性分析4</p><p> 1.4.1預期支出4</p><p> 1.4.2預期收益4</p><p> 1.5 社會可行性分析4</p><
9、p> 1.5.1 法律因素4</p><p> 1.5.2 用戶使用可行性5</p><p> 1.6 意見結論5</p><p> 第二章 需求分析6</p><p> 2.1 系統(tǒng)需求6</p><p> 2.2 功能需求6</p><p> 2.3 數(shù)據(jù)流圖
10、7</p><p> 2.3.1 系統(tǒng)頂層圖7</p><p> 2.3.2 數(shù)據(jù)流程圖一層分解圖7</p><p> 2.3.3 數(shù)據(jù)流程圖二層分解圖9</p><p> 2.4 數(shù)據(jù)字典11</p><p> 2.4.1 數(shù)據(jù)流條目11</p><p> 2.4.2
11、數(shù)據(jù)處理13</p><p> 2.4.3 數(shù)據(jù)存儲14</p><p> 第三章 概念設計15</p><p> 3.1 實體之間的聯(lián)系15</p><p> 3.2 E-R圖15</p><p> 3.2.1 局部E-R圖15</p><p> 第四章 邏輯設計19
12、</p><p> 4.1 概念模型向關系模型的轉換19</p><p> 4.1.1 1:N聯(lián)系的轉化的關系模式19</p><p> 4.1.2 M:N聯(lián)系的轉化的關系模式19</p><p> 4.2 概念模型的優(yōu)化20</p><p> 4.2.1 確定范式級別20</p>&
13、lt;p> 4.2.2 實施規(guī)范化處理20</p><p> 第五章 物理設計22</p><p> 5.1 數(shù)據(jù)庫的存儲結構22</p><p> 5.1.2 數(shù)據(jù)庫的表設計22</p><p> 5.1.3數(shù)據(jù)的存放位置的設計24</p><p> 5.1.4 關系模式的存取方法24&
14、lt;/p><p> 5.1.5.數(shù)據(jù)庫安全性24</p><p> 第六章 實現(xiàn)、運行與維護25</p><p><b> 6.1 實現(xiàn)25</b></p><p> 6.1.1 數(shù)據(jù)庫的實現(xiàn)25</p><p> 6.1.2 視圖的實現(xiàn)25</p><p&g
15、t; 6.2 人機界面設計27</p><p> 6.2.1 用戶登陸界面27</p><p> 6.2.2 學生選課管理界面27</p><p> 6.2.3 教師管理界面28</p><p> 6.2.4 管理員管理界面28</p><p> 6.3 系統(tǒng)測試29</p>&l
16、t;p> 6.3.1用戶登陸測試29</p><p> 6.3.2 學生選課管理測試29</p><p> 6.3.3 教師管理測試30</p><p> 6.3.4 管理員管理測試31</p><p> 6.4 運行維護32</p><p><b> 總 結33</b&g
17、t;</p><p><b> 參考文獻34</b></p><p><b> 第一章 系統(tǒng)規(guī)劃</b></p><p><b> 1.1 引言</b></p><p> 1.1.1 編寫目的</p><p> 可行性研究的目的是用最小的代價
18、在盡可能的短的時間內確定數(shù)據(jù)庫系統(tǒng)是否可能開發(fā)、是否值得開發(fā)、是否可以開發(fā)(在該報告中主要是考查《學生選課管理系統(tǒng)》是否可能開發(fā)、是否值得開發(fā)、是否可以開發(fā))。其實質是在較高層次上以較抽象方式進行的、簡化的壓縮的需求分析和概要設計過程。</p><p><b> 1.1.2項目背景</b></p><p> 開發(fā)軟件名稱:學生選課管理系統(tǒng)</p>&
19、lt;p> 項目任務提出者:李軍</p><p> 項目開發(fā)者:洪峰、陳梓明等</p><p><b> 用戶:各大高校師生</b></p><p> 1.2 可行性研究的前提</p><p><b> 1.2.1 目標</b></p><p> 系統(tǒng)實現(xiàn)后
20、,極大的方便對學生進行選課和選課后臨時班級的安排管理,學生選課信息的管理。避免在安排課程信息的滯后,減少信息交流的煩瑣過程及其帶來的開銷。促進高校教育的計算機信息化進程,提高學校的工作效率。對于系統(tǒng)的本身而言,應該具有較高的實用性、安全性。能夠極大的滿足學生選課,以及學校對選課信息的管理。</p><p><b> 1.2.2 要求</b></p><p><
21、b> 主要功能:</b></p><p> 教師和學生登陸系統(tǒng)的帳號和密碼,初始都分別為教師和學號,登陸后密碼可以修改。其中教師的職位可以是管理員。管理員和非管理員的老師及學生對系統(tǒng)的操作具有不同的權限。管理員登陸系統(tǒng),對學生選課情況進行管理,包括發(fā)布選課信息,對學生的選課情況進行查看。管理員還可以對授課老師的信息進行增加、刪除、修改、查詢。教師登陸系統(tǒng),能查看自己的個人信息,及所授課的班級
22、的所有學生的本門課程的成績信息,并能進行增加和修改。學生登陸系統(tǒng),能進行選課,查看管理員發(fā)布的選課信息,自己的選課情況,本人的基本信息,以及課程的成績。系統(tǒng)自動分配學生選課后的臨時班級。</p><p><b> 性能要求:</b></p><p> 管理員發(fā)布的信息、學生選課的信息以及管理員和學生對系統(tǒng)操作的信息必須及時的反映在本系統(tǒng)上,且無差錯。</p&
23、gt;<p><b> 輸入要求:</b></p><p> 具有很好的容錯性和兼容性</p><p><b> 輸出要求:</b></p><p><b> 應迅速、準確、實時</b></p><p> 完成期限:預計五個星期,即截止2011年12月3
24、0日。</p><p> 1.2.3 條件假定和限制</p><p><b> 建議軟件壽命:未知</b></p><p><b> 經(jīng)費來源:自費</b></p><p> 硬件條件:Intel Pentium 4、1G內存同等性能及以上的硬件條件</p><p>
25、 運行環(huán)境:Window XP 、Tomcat5.5、JDK1.6</p><p> 數(shù)據(jù)庫:Microsoft SQL server2005</p><p> 投入運行最遲時間:2012年1月5日</p><p> 1.2.4 決定可行性的主要因素</p><p> 技術可行,現(xiàn)有技術可完全承擔開發(fā)任務。</p>&
26、lt;p> 操作可行,軟件能被操作人員快速接受。</p><p> 經(jīng)濟可行,為小型系統(tǒng)軟件,支出較小。</p><p> 社會可行,使用軟件全部為正版,且本軟件在法律允許范圍之內</p><p> 1.3 技術可行性分析</p><p> 技術上的可行性分析要考慮現(xiàn)有技術條件能否順利完成開發(fā)工作及將來要采用的硬件和軟件技術能
27、否滿足用戶提出的要求。</p><p> 1.3.1 技術的支持能力</p><p> 本系統(tǒng)采用J2EE企業(yè)級開發(fā)方案,其中MyEclipse 8.5作為系統(tǒng)前臺應用程序開發(fā)工具,采用SQL Server 2005工具建立數(shù)據(jù)庫,并通過JDBC使兩者進行連接從而進行系統(tǒng)軟件開發(fā)。此前,我們已使用相同技術開發(fā)過類似軟件系統(tǒng),具有一定開發(fā)經(jīng)驗。此外,從開發(fā)人員的水平考慮,本系統(tǒng)的軟件開發(fā)
28、人員,都具有較強軟件開發(fā)能力,且之前開發(fā)都參加過類似軟件系統(tǒng)的開發(fā),經(jīng)驗豐富。</p><p> 1.3.2 技術的優(yōu)勢</p><p> 一、J2EE體系結構提供中間層集成框架用來滿足無需太多費用而又需要高可用性、高可靠性以及可擴展性的應用的需求;</p><p> 二、開發(fā)效率、代碼重用率高;</p><p> 三、跨平臺,編寫一
29、次,隨處運行;</p><p> 四、開發(fā)界面友好,智能。</p><p> 1.3.3 技術的難點</p><p> 一、數(shù)據(jù)庫設計和維護</p><p> 二、系統(tǒng)負荷和安全問題</p><p> 1.4 經(jīng)濟可行性分析</p><p><b> 1.4.1預期支出&l
30、t;/b></p><p><b> 基礎投資:</b></p><p> 計算機10臺:5000*10 = 5 萬</p><p> 人員工資:5000元*2月*10人=10萬</p><p><b> 宣傳費用:1萬</b></p><p> 其他不可知支
31、出: 2萬</p><p><b> 支出共計:18萬</b></p><p> 本學生選課管理系統(tǒng)其它所需的硬件(計算機及相關硬件)和軟件環(huán)境(MyEclipse8.5+Tomcat5.5+JDK1.6+SQL Server 2005),市場上都容易購買到或從相關網(wǎng)站下載。其中JDK1.5為開源免費軟件。而SQL server 2005本軟件采用的是學習版,也是
32、免費的,MyEclipse8.5以前已經(jīng)購得,開發(fā)成本較小。</p><p><b> 1.4.2預期收益</b></p><p> 預期發(fā)售價格:2萬/套</p><p> 目標客戶:全國各大高校</p><p> 預期發(fā)售量:40套/年</p><p> 預期收益:40*2=80萬&
33、lt;/p><p> 預期收益>預期支出,開發(fā)本系統(tǒng)能夠為投資者帶來較高的收益。</p><p> 1.5 社會可行性分析</p><p> 1.5.1 法律因素</p><p> 開發(fā)使用的所有軟件都選用正版,其中JDK1.5為開源免費軟件。而SQL server 2005本軟件采用的是學習版,也是免費的。</p>
34、<p> 1.5.2 用戶使用可行性</p><p> 本軟件操作簡單,界面友好,功能完備,有一定計算機基礎的人員就能進行操作。</p><p><b> 1.6 意見結論</b></p><p> 根據(jù)上述分析,技術、經(jīng)濟、社會可行性都可行,可以立即進行開發(fā)。</p><p><b> 第
35、二章 需求分析</b></p><p><b> 2.1 系統(tǒng)需求</b></p><p> 用戶的需求具體體現(xiàn)在選課信息和用戶信息的提供、保存、更新和查詢的方面。這就要求數(shù)據(jù)庫的設計必須合理,使之能夠充分滿足各種信息的輸入和輸出,保證數(shù)據(jù)存儲的可靠性,并且能夠快速取出和存入。而前臺顯示部分,應具有人性化的界面,方便用戶操作。因各個學校的實際情況不同,
36、系統(tǒng)應該具有兼容性。例如:一些學校學生人數(shù)較多,同時登陸系統(tǒng),系統(tǒng)承載的負荷就很大。系統(tǒng)需要同時處理很大的數(shù)據(jù)量,這時系統(tǒng)不會因此崩潰。此外,系統(tǒng)還應該具有較強的安全性,保證身份不同的用戶,不能越權操作。非合法用戶不能對數(shù)據(jù)進行操作。</p><p><b> 2.2 功能需求</b></p><p> 通過系統(tǒng)功能的分析,結合需求分析員在各大高校實地考查,調查的
37、對象涵蓋了,學校的教職工、在校師生。特別是對已經(jīng)運行了與本系統(tǒng)同類產(chǎn)品的學校的師生使用選課管理系統(tǒng)心得體會進行了分析,總結出如下的需求信息:</p><p> ?。?) 學生的需求:能進行選課,查看管理員發(fā)布的選課信息,自己的選課情況,本人的基本信息,課程的成績;</p><p> ?。?)教師的需求:能查看自己的個人信息,及所授課的班級的所有學生的本門課程的成績信息,并能進行增加和修改;
38、</p><p> ?。?)管理員的需求:對學生選課情況進行管理,包括發(fā)布選課信息,對學生的選課情況進行查看。管理員還可以對授課老師的信息進行管理。</p><p><b> 2.3 數(shù)據(jù)流圖</b></p><p> 2.3.1 系統(tǒng)頂層圖</p><p> 根據(jù)系統(tǒng)主要信息的處理功能,整個系統(tǒng)可以看作登陸管理,
39、用戶選課管理兩個部分。從而得出了學生選課管理系統(tǒng)的頂層圖如下所示:</p><p> 注: F1:用戶登陸信息 F2:用戶注冊信息 F3:用戶基本信息 F4:用戶基本信息</p><p> F5:學生選課信息清單 F6:學生選課信息 F7:登陸錯誤信息 F8:系統(tǒng)反饋用戶信息</p><p> F9:用戶信息清單 F10:修改密碼后的用戶信息</
40、p><p> 2.3.2 數(shù)據(jù)流程圖一層分解圖</p><p> ?。?)用戶登陸管理。用戶在登陸時,系統(tǒng)會進行判斷。用戶一共有三種類型,分別是學生,教師和管理員。其中,一部分教師是管理員。在登陸的只有學生和教師兩種類型,管理員的身份由系統(tǒng)自行判斷。在判定時需要查詢用戶信息庫。用戶信息庫,包括學生注冊信息,教師注冊信息,管理員信息等。學生選課管理系統(tǒng)一層分解圖——登陸管理,如下圖所示:<
41、;/p><p> 注:F2.1:學生登陸信息 F2.2:教師登陸信息 F2.3:管理員登陸信息</p><p> F7.1:用戶身份信息 F7.2:修改密碼的錯誤信息</p><p> ?。?)用戶操作管理。在登陸管理進行判斷后,發(fā)送學生登陸信息,教師登陸信息,管理員登陸信息的其中一種。根據(jù)用戶身份信息的不同,進入不同的管理界面,相應的操作的功能,權限都有所不同
42、。如下圖所示:</p><p> 注:F3.1:原始學生信息 F5.1:學生更新后的選課信</p><p> F6.1:學生查詢的選課信息 F8.1:學生操作后返回的信息</p><p> 注:F3.2:原始教師信息 5.2:教師更新后的選課信息</p><p> F6.2:教師查詢的選課信息 F8.1:教師操作后返回的信息</
43、p><p> 注:F3.3:原始管理員信息F9.1更新后的用戶信息F6.3:管理員查詢的選課信息F8.1:管理員操作后返回的信息 F5.3:管理員更新后的選課信息</p><p> 2.3.3 數(shù)據(jù)流程圖二層分解圖</p><p> ?。?)學生管理。將P2.1進行分解,學生管理包括,查看選課信息和個人信息,進行選課、重新選課。學生選課管理系統(tǒng)二層分解圖——學生管理
44、如下圖所示:</p><p> 注:F3.1:學生個人信息 F5.1.1:增加后的選課信息F5.1.2: 刪除后的選課信息</p><p> ?。?)教師管理。將P2.2進行分解,教師管理包括,查看選課信息和個人信息,填寫學生的成績。學生選課管理系統(tǒng)二層分解圖——學生管理如下圖所示:</p><p> 注:F3.2.1:教師個人信息 F3.2.2:學生個人信息
45、 </p><p> F5.2.2:增加后的學生成績信息 F5.2.3:修改后的學生成績信息</p><p> ?。?)教師管理。將P2.3進行分解,管理員管理包括,1.管理學生信息,包括對學生信息的查詢、增加,修改,刪除;2.管理教師信息,包括對教師信息的查詢、增加,修改,刪除;3.選課信息管理,包括發(fā)布選課信息,增加,修改,刪除選課課程等。學生管理系統(tǒng)二層分解圖——學生管理如下圖
46、所示:</p><p> 注:F3.3.1:原始學生信息 F3.3.2:原始教師信息 F3.3.3:原始課程信息</p><p> F3.3.4:原始教室信息 F9.1.1:修改后學生信息 F9.1.2:修改后的教師信息 F9.1.3:修改后的課程信息 F9.1.3:修改后的班級信息</p><p><b> 2.4 數(shù)據(jù)字典</b>
47、;</p><p> 2.4.1 數(shù)據(jù)流條目</p><p> 表2.1用戶登陸信息數(shù)據(jù)流條目</p><p> 表2.2 用戶身份信息數(shù)據(jù)流條目</p><p> 表2.3 用戶注冊信息數(shù)據(jù)流條目</p><p> 表2.4 用戶基本信息數(shù)據(jù)流條目</p><p> 表2.5 用戶
48、基本信息數(shù)據(jù)流條目</p><p> 表2.6 用戶基本信息數(shù)據(jù)流條目</p><p> 表2.7 用戶基本信息數(shù)據(jù)流條目</p><p> 表2.8 用戶基本信息數(shù)據(jù)流條目</p><p> 表2.9 用戶基本信息數(shù)據(jù)流條目</p><p> 表2.10 用戶基本信息數(shù)據(jù)流條目</p><
49、;p> 2.4.2 數(shù)據(jù)處理</p><p> 表2.11 登陸管理數(shù)據(jù)處理</p><p> 表2.12 用戶操作管理數(shù)據(jù)處理</p><p> 2.4.3 數(shù)據(jù)存儲</p><p> 表2.13 數(shù)據(jù)存儲處理</p><p><b> 第三章 概念設計</b></p&g
50、t;<p> 3.1 實體之間的聯(lián)系</p><p> 根據(jù)需求分析,歸結出合適的聯(lián)系:</p><p> 1、一個學生最多能夠選兩門課,一門課可以被多個學生選</p><p> 2、一個老師最多能教一門課,一門課可以被多個老師教授,</p><p> 3、教師中只有一個是管理員</p><p>
51、; 4、一個學生可以屬于不超過兩個臨時班級,一個臨時班級可以有多名學生</p><p> 5、一名教師可以在多個臨時班級上課,一個臨時班級只有一名教師教授</p><p><b> 3.2 E-R圖</b></p><p> 3.2.1 局部E-R圖</p><p> (1)學生課程聯(lián)系E-R圖</p&g
52、t;<p> ?。?)教師課程關系E-R圖</p><p> ?。?)學生臨時班級聯(lián)系E-R圖</p><p> (4)管理員教師關系實體E-R圖</p><p> ?。?)教師班級關系實體E-R圖</p><p> (6)課程臨時班級關系實體E-R圖</p><p> 3.2.2 全局E-R圖&l
53、t;/p><p><b> 第四章 邏輯設計</b></p><p> 4.1 概念模型向關系模型的轉換</p><p> 根據(jù)需求分析中的E-R圖,通過對實體的屬性和之間的聯(lián)系的分析,我們將其由概念模型向關系模型轉化,并且根據(jù)范式化理論進行優(yōu)化</p><p> 4.1.1 1:N聯(lián)系的轉化的關系模式</p&
54、gt;<p> ?。?)教師課程聯(lián)系概念模型向關系模型的轉化</p><p> 教師表(教師號,教師名,性別,年齡,身份,密碼,課程號)</p><p> 課程表(課程號,課程名,學分,上課時間,開課時間,結束時間)</p><p> ?。?)教師臨時班級聯(lián)系概念模型向關系模型的轉化</p><p> 教師表(教師號,教師
55、名,性別,年齡,身份,密碼)</p><p> 臨時班級表(班級號,班級名,人數(shù),地點,教師號)</p><p> ?。?)課程臨時班級聯(lián)系概念模型向關系模型的轉化</p><p> 臨時班級表(班級號,班級名,人數(shù),地點,課程號)</p><p> 課程表(課程號,課程名,學分,上課時間,開課時間,結束時間)</p>&
56、lt;p> 4.1.2 M:N聯(lián)系的轉化的關系模式</p><p> ?。?)學生選課聯(lián)系概念模型向關系模型的轉化</p><p> 學生表(學號,姓名,性別,年齡,系部,密碼)</p><p> 課程表(課程號,課程名,學分,上課時間,開課時間,結束時間)</p><p> 選課表(學號,課程號,成績)</p>
57、<p> ?。?)學生班級聯(lián)系概念模型向關系模型的轉化</p><p> 學生表(學號,姓名,性別,年齡,系部,密碼)</p><p> 臨時班級表(班級號,班級名,人數(shù),地點)</p><p> 學生班級關系表(學生號,班級號)</p><p> 4.2 概念模型的優(yōu)化</p><p> 4.2.
58、1 確定范式級別</p><p> 根據(jù)上述分析所歸結出來的數(shù)據(jù)依賴的種類和在本系統(tǒng)實際的開發(fā)過程中,需要涉及多表的查詢及表的修改和刪除,且存在多值依賴的實際情況下,其關系模式應達到BCNF。</p><p> 4.2.2 實施規(guī)范化處理</p><p> 由于學生選課聯(lián)系的關系模式、學生班級的關系模式和教師管理員聯(lián)系的關系模式已經(jīng)不存非平凡且非函數(shù)依賴額多值
59、依賴,所以在這里不需要做處理</p><p> 各個關系模式的函數(shù)依賴集如下:</p><p> 教師課程聯(lián)系:F={教師號→教師名,教師號→性別,教師號→年齡,</p><p> 教師號→身份,教師號→密碼,教師號→課程號}</p><p> 班級臨時班級聯(lián)系:F={班級號→班級名,班級號→人數(shù),班級號→地點,班級號→教師號}<
60、;/p><p> 課程臨時班級聯(lián)系:F={班級號→班級名,班級號→人數(shù),班級號→地點,</p><p><b> 班級號→課程號}</b></p><p> 選課聯(lián)系:F={(學號,課程號)→成績}</p><p> 學生班級聯(lián)系:F={(學生號,班級號)}</p><p> ?。?)教師課程
61、聯(lián)系概念模型向關系模型的優(yōu)化</p><p> 教師表(教師號,教師名,性別,年齡,身份,密碼)</p><p> 課程表(課程號,課程名,學分,上課時間,開課時間,結束時間)</p><p> 教師課程聯(lián)系(教師號,課程號)</p><p> (2)教師臨時班級聯(lián)系概念模型向關系模型的優(yōu)化</p><p>
62、 教師表(教師號,教師名,性別,年齡,身份,密碼)</p><p> 臨時班級表(班級號,班級名,人數(shù),地點)</p><p> 教師臨時班級關系(班級號,教師號)</p><p> (3)課程臨時班級聯(lián)系概念模型向關系模型的優(yōu)化</p><p> 臨時班級表(班級號,班級名,人數(shù),地點)</p><p>
63、課程表(課程號,課程名,學分,上課時間,開課時間,結束時間)</p><p> 課程臨時班級關系(班級號,課程號)</p><p> 經(jīng)過規(guī)范化處理后的所有關系模如下:</p><p> 學生表(學號,姓名,性別,年齡,系部,密碼)</p><p> 課程表(課程號,課程名,學分,上課時間,開課時間,結束時間)</p>
64、<p> 教師表(教師號,教師名,性別,年齡,身份,密碼)</p><p> 臨時班級表(班級號,班級名,人數(shù),地點)</p><p> 教師課程關系(教師號, 課程號)</p><p> 教師臨時班級關系(班級號,教師號)</p><p> 選課表(學號,課程號,成績)</p><p> 學生臨
65、時班級關系表(學生號,班級號)</p><p> 課程臨時班級關系(班級號,課程號)</p><p><b> 第五章 物理設計</b></p><p> 5.1 數(shù)據(jù)庫的存儲結構</p><p> 通過需求分析,概要設計和邏輯設計流程得到本系統(tǒng)的數(shù)據(jù)庫結構。</p><p> 5.1.
66、2 數(shù)據(jù)庫的表設計</p><p> 進一步確定上一章邏輯設計中設計好的關系模式中各個數(shù)據(jù)項的類型和長度,將每個關系轉換為數(shù)據(jù)庫中的二維表格,并確定了各個表的主鍵和外鍵,得到以下表結構:</p><p><b> 表5.1 學生表</b></p><p><b> 表5.2 教師表</b></p>&l
67、t;p><b> 表5.3 課程表</b></p><p> 表5.4 臨時班級表</p><p><b> 表5.5 選課表</b></p><p> 表5.6學生臨時班級關系表</p><p> 表5.7 教師課程關系表</p><p> 表5.8 教師
68、臨時班級關系表</p><p> 表5.9 課程臨時班級關系表</p><p> 5.1.3數(shù)據(jù)的存放位置的設計</p><p> 根據(jù)本系統(tǒng)的數(shù)據(jù)庫的使用情況,主數(shù)據(jù)文件信息量大且使用頻繁將其存儲在高速存儲器(硬盤)上。將表和表上的索引存儲在不同的磁盤上以便提高查詢效率,同時這樣可以提高物理I/O讀寫效率。數(shù)據(jù)庫備份文件和日志文件等文件因為使用頻率小而且數(shù)據(jù)
69、量非常大,存放在低速存儲設備上。</p><p> 5.1.4 關系模式的存取方法</p><p> 關系模式采用索引存取方法與聚簇存取方法共用。</p><p> 5.1.5.數(shù)據(jù)庫安全性</p><p> 在數(shù)據(jù)庫中,由于用戶的身份不同,對數(shù)據(jù)庫的訪問權限也就不同。管理員幾乎能夠對所有的用戶自定義表進行操作(包括增、刪、改、查)。
70、但根據(jù)實際情況,學生一旦選課成功,管理員是無法對其選課信息進行修改。同樣,學生與教師對數(shù)據(jù)庫的訪問權限就更加小了。這樣也就保證了數(shù)據(jù)庫安全性。</p><p> 另外一方面,數(shù)據(jù)庫表中,各表之間根據(jù)實體完整性、參照完整性、域完整性設置了各種約束。一旦一張表被非法操作,如刪除,修改。也會影響其它的表。所以這就要求DBA定時進行備份,防止當數(shù)據(jù)丟失時,引起不可估量的損失。</p><p>
71、 第六章 實現(xiàn)、運行與維護</p><p><b> 6.1 實現(xiàn)</b></p><p> 根據(jù)概要設計和邏輯設計的結果,在計算機上建立實際的數(shù)據(jù)庫結構,導入數(shù)據(jù)進行程序調試。</p><p> 6.1.1 數(shù)據(jù)庫的實現(xiàn)</p><p> ?。?)創(chuàng)建數(shù)據(jù)庫Student</p><p>
72、 create database Student</p><p><b> on</b></p><p><b> (</b></p><p> name='學生選課管理庫',</p><p> filename='E:\db\學生選課管理庫.mdf',&l
73、t;/p><p><b> size=5,</b></p><p> maxsize=15,</p><p> filegrowth=2</p><p><b> )</b></p><p> 6.1.2 視圖的實現(xiàn)</p><p> ?。?)創(chuàng)
74、建查詢可供選擇課程的視圖</p><p> create view cinfo</p><p><b> as </b></p><p> select course.cname,course.ccredit,class.address,course.ctime,course.cbegintime,course.cendtime,clas
75、s.number,course.cno,class.csname,class.csno</p><p> from course,tc,class,cc</p><p> where course.cno=tc.cno and course.cno=cc.cno and class.csno=cc.csno </p><p> ?。?)創(chuàng)建教師信息視圖<
76、/p><p> create view tinfo</p><p><b> as</b></p><p> select teacher.tno,teacher.tname,teacher.tsex,teacher.tage,status,course.cname</p><p> from teacher,cou
77、rse,tc</p><p> where teacher.tno=tc.tno and tc.cno=course.cno;</p><p> ?。?)創(chuàng)建教師教師授課視圖</p><p> create view tcinfo</p><p><b> as</b></p><p>
78、select teacher.tno,teacher.tname,course.cno,course.cname</p><p> from teacher,course,tc</p><p> where teacher.tno=tc.tno and tc.cno=course.cno</p><p> ?。?)學生的選課信息視圖</p><
79、;p> create view scinfo</p><p><b> as</b></p><p> select student.sname,course.cname,course.ccredit,course.ctime,course.cbegintime,course.cendtime,student.sno</p><p>
80、; from student,course,sc</p><p> where student.sno=sc.sno and course.cno=sc.cno </p><p><b> ?。?)教師任教情況</b></p><p> create view ctinfo</p><p><b> a
81、s</b></p><p> select teacher.tno,teacher.tname,class.csno,class.csname </p><p> from class,teacher,ct</p><p> where class.csno=ct.csno and ct.tno=teacher.tno</p><
82、;p> ?。?)教師課程班級之間關系的視圖</p><p> create view tcs</p><p><b> as</b></p><p> select tc.cno,tc.tno,cc.csno from cc,tc where cc.cno=tc.cno </p><p> (7)學生課程班
83、級之間的關系的視圖</p><p> create view scc</p><p><b> as</b></p><p> select scs.sno,scs.csno,cc.cno from scs,cc where scs.csno=cc.csno</p><p> select * from sc&l
84、t;/p><p> ?。?)學生的已選課程的成績</p><p> create view scgrade</p><p><b> as</b></p><p> select scc.csno,class.csname,scc.sno,student.sname,scc.cno,course.cname,stude
85、nt.sclass,sc.grade</p><p> from scc,course,class,student,sc </p><p> where scc.cno=course.cno and scc.csno=class.csno and scc.sno=student.sno and scc.sno=sc.sno and scc.cno=sc.cno</p>&
86、lt;p> (9)創(chuàng)建查詢可供選擇課程的視圖</p><p> create view cinfo</p><p><b> as</b></p><p> select course.Cname, course.Ccredit, class.address,course.CTime,course.Cbegintime,cours
87、e.Cendtime,class.number,course.Cno,class.CSname,class.CSno,teacher.Tname</p><p> from tcs,teacher,class,course</p><p> where tcs.tno=teacher.tno and class.csno=tcs.csno and course.cno=tcs.cno&
88、lt;/p><p> (10)創(chuàng)建查詢已選可供選擇的課程的視圖</p><p> create view scinfo</p><p> as select student.sno,student.sname,course.cname,course.ccredit,course.ctime,</p><p> course.cbegint
89、ime,course.cendtime,course.cno,sc.grade</p><p> from sc,student,course</p><p> where sc.sno=student.sno and sc.cno=course.cno</p><p> 6.2 人機界面設計</p><p> 6.2.1 用戶登陸界
90、面</p><p> 用戶登陸界面是每一個用戶,在登陸本系統(tǒng)時出現(xiàn)的界面,如要用戶輸入用戶名、密碼和驗證碼,以及確定用戶身份。其界面如下圖:</p><p> 圖6-1 用戶登陸界面</p><p> 6.2.2 學生選課管理界面</p><p> 學生登陸成功后,進入學生管理模塊,其界面如下:</p><p>
91、; 圖6-2 學生選課管理界面</p><p> 6.2.3 教師管理界面</p><p> 教師成功登陸系統(tǒng)后,教師管理界面如下圖:</p><p> 圖6-3 教師管理界面</p><p> 6.2.4 管理員管理界面</p><p> 管理員成功登陸系統(tǒng)后,管理員管理模塊界面如下圖:</p>
92、;<p> 圖6-4 管理員管理界面</p><p><b> 6.3 系統(tǒng)測試 </b></p><p> 6.3.1用戶登陸測試</p><p> ?。?)登陸信息驗證測試。有一名用戶,用戶名為:S01001 密碼為:hongfeng,其身份為學生。當其在登陸界面所有的信息輸入正確時將進入如圖6-2的界面。如果
93、該用戶輸入的為abcdef,系統(tǒng)就會提示用戶出錯,出錯界面如下:</p><p> 圖6-5-1 登陸錯誤提示1</p><p> (2)如果用戶在輸入登陸信息時不符合規(guī)范,將彈出錯誤提示。如:驗證碼要求輸入4位數(shù)字,現(xiàn)在輸入4位字符或3位數(shù)字,將會彈出一下提示框:</p><p> 圖6-5-2 登陸錯誤提示2</p><p> 6
94、.3.2 學生選課管理測試</p><p> ?。?)學生選課測試。一名學生用戶,登陸系統(tǒng)后,進入圖6-2界面,選擇學生選課,進行選課。如下圖:</p><p> 圖6-6-1 課程安排</p><p> ?。?)該用戶選擇了考研數(shù)學和汽車概論兩門課程,點擊選課按鈕,系統(tǒng)提示選課成功。選課成功后,返回課程安排界面,如下圖:</p><p>
95、 圖6-6-2 選課后的課程安排</p><p> (3)課程安排界面,點擊已選課程,進入如下界面:</p><p> 圖6-6-3 已選課程</p><p> 6.3.3 教師管理測試</p><p> (1)一名教師,登陸系統(tǒng)成功后,進入如圖6-3界面,點擊教師授課信息,顯示該名教師臨1101班任教,如下圖:</p>
96、<p> 圖6-7-1 教師授課班級信息</p><p> ?。?)在圖6-7-1界面,點擊查看臨1101班的信息,進入如下界面:</p><p> 圖6-7-2 修改前的學生成績</p><p> ?。?)在6-7-2界面點擊修改,將“蕭蕭”的成績修改成90,修改后的界面如下:</p><p> 圖6-7-2修改后的學生
97、成績</p><p> 6.3.4 管理員管理測試</p><p> (1)“王軍”是本系統(tǒng)唯一一名管理員,登陸系統(tǒng)后,進入圖6-4界面,下面對其對學生的管理進行測試。點擊學生信息,進入如下圖界面:</p><p> 圖6-8-1 學生信息管理</p><p> ?。?)添加一個學號為“S01005”,姓名為“劉宏”,性別為“男”,22
98、歲,計算機學院,計科0901班的學生信息,添加成功后,如下圖</p><p> 圖6-8-2 增加學生信息后的學生信息</p><p> (3)在圖6-8-2界面,輸入“男”作為關鍵字,點擊查詢后,如下圖:</p><p> 圖6-8-3 搜索后學生信息</p><p> ?。?)在圖6-8-2界面,在第6行,點擊修改,將“劉嬌”的性別
99、改成男,修改成功后,如下圖:</p><p> 圖6-8-4 修改后學生信息</p><p><b> 6.4 運行維護</b></p><p> 經(jīng)過實際的測試和運行,已經(jīng)可以滿足高校公開課學生選課該,系統(tǒng)運行穩(wěn)定,日后的使用和維護中DBA應該注意進行定期備份數(shù)據(jù)庫,以免丟失數(shù)據(jù)庫。定期清理數(shù)據(jù)庫中的無效數(shù)據(jù),以提高運行效率。對軟件及運
100、行環(huán)境進行日常維護。</p><p><b> 總 結</b></p><p> 在此次的課程設計當中,我們遇到很多困難,同時也學習到很多。最重要的是深刻體會到了團隊的重要性。</p><p> 在課程設計剛開始的時候,由于我們在沒有進行詳細的數(shù)據(jù)庫分析的情況下,就盲目的編寫程序。使得在數(shù)據(jù)庫表結構,關系模式出現(xiàn)問題或變動的時候,花費了大
101、量時間來修改代碼。造成了工作進度落后于預期進度。給以后的工作帶來的很多的不便。這個時候已經(jīng)離項目交付日期不到兩周。我們的開發(fā)團隊馬上組織起來,召開緊急會議,總結了發(fā)生錯誤的原因。最后一起進行討論,協(xié)商,決定改變以前的錯誤方針,重新進行詳細的合理的數(shù)據(jù)庫分析。踏踏實實的從可行性分析開始,經(jīng)過需求分析、邏輯設計和物理設計。三天后,一份詳細的數(shù)據(jù)庫分析報告擺在大家的面前。此后,程序的編寫就十分方便了。</p><p>
102、 我們采用MVC模式的Servlet+JSP+JavaBean技術進行數(shù)據(jù)庫的連接和界面的開發(fā)。在開發(fā)過程遇到最大的困難是,地址跳轉的問題。由于本系統(tǒng)是基于Web的,所以在從一個頁面到另一個頁面的跳轉,地址的確定就極為重要。而恰恰開始的時候這方面大家掌握的并不是很好,所以總是出現(xiàn)了問題。大家針對這個問題,重新進行有關知識的學習。通過一邊學習,一邊解決遇到的問題。我們對這個方面的知識有了深刻的認識。</p><p&g
103、t; 總之,完成這次課程設計,我們都獲益匪淺,對以后的項目開發(fā)有很大幫助。</p><p><b> 參考文獻</b></p><p> [1] 陸琳,劉桂林.數(shù)據(jù)庫技術與應用-SQL Server 2005[M].長沙:中南大學出版社,2010</p><p> [2] 何旭洪,余建英.PowerBuilder數(shù)據(jù)庫開發(fā)實例導航[M]
104、.北京:人民郵電出版社,2003</p><p> [3] 王小玲,劉衛(wèi)國.數(shù)據(jù)庫應用基礎教程[M].北京:中國鐵道出版社,2008</p><p> [4] 施伯樂,丁寶康,汪衛(wèi).數(shù)據(jù)庫系統(tǒng)教程[M].第3版.北京:高等教育出版社,2008</p><p> [5] 程云志,張帆,崔翔.數(shù)據(jù)庫原理與SQL Server2005應用教程 [M].北京:機械工業(yè)
105、出版社,2006</p><p> [6] 苗雪蘭,劉瑞新,宋會群.數(shù)據(jù)庫技術與應用[M].北京:機械工業(yè)出版社,2006</p><p> [7] 李春葆,曾平.數(shù)據(jù)庫原理與應用:基于SQL Server200[M].北京:清華大學出版社,2006</p><p> [8] 寧洪,趙文濤,賈麗麗.數(shù)據(jù)庫系統(tǒng)原理[M].北京:北京郵電大學出版社,2005<
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設計---學生選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設計--學生選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設計學生選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設計----學生選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設計---學生選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設計--學生選課成績管理系統(tǒng)
- 數(shù)據(jù)庫課程設計---學生選課系統(tǒng)
- 學生選課系統(tǒng)數(shù)據(jù)庫課程設計
- 《數(shù)據(jù)庫技術》課程設計--學生選課管理系統(tǒng)設計
- 數(shù)據(jù)庫選課管理系統(tǒng)課程設計
- 數(shù)據(jù)庫課程設計--高校學生選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設計--學生選課信息管理系統(tǒng)
- sqlserver數(shù)據(jù)庫課程設計--選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設計--選課系統(tǒng)
- sql數(shù)據(jù)庫課程設計 學生選課
- 學生選課信息系統(tǒng)數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計(實驗選課系統(tǒng))
- 數(shù)據(jù)庫課程設計-學生管理系統(tǒng)
- 數(shù)據(jù)庫課程設計——學生管理系統(tǒng)
- 數(shù)據(jù)庫課程設計學生管理系統(tǒng)
評論
0/150
提交評論