數(shù)據(jù)庫案例分析_第1頁
數(shù)據(jù)庫案例分析_第2頁
數(shù)據(jù)庫案例分析_第3頁
數(shù)據(jù)庫案例分析_第4頁
數(shù)據(jù)庫案例分析_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

-PAGE3-成績課程設計報告題目學生信息管理課程名稱數(shù)據(jù)庫應用程序課程設計院部名稱專業(yè)班級學生姓名學號課程設計地點課程設計學時指導教師金陵科技學院教務處制設計項目名稱:數(shù)據(jù)庫應用程序課程設計學時:30同組學生姓名:實驗地點:實驗日期:實驗成績:批改教師:批改時間:第45頁目錄TOC\h\z\t"11,1,12,1,21,2,22,2,23,2,25,2"摘要 3一、 課程設計目的和要求 4二、 課程設計的開發(fā)環(huán)境 4三、 課程設計過程 41. 需求分析 42. 概念設計 163. 邏輯結構 184. 物理結構 215. 數(shù)據(jù)庫實施 226. 備份和還原 25四、 界面設計及程序邏輯代碼設計 261. 開發(fā)工具簡介 262. 系統(tǒng)的主界面 284.本系統(tǒng)模塊以及詳細說明 32五、 課程設計體會 32六、 用戶系統(tǒng)使用說明書 331. 用戶登陸 332. 管理員權限 333. 教師權限 344. 學生權限 345. 班級管理 346. 教師管理 347. 學生管理 358. 課程管理 369. 成績管理 3710. 用戶管理 38七、 系統(tǒng)測試 391. 測試項目名稱及測試內容 392. 測試用例 393. 功能測試用例 40八、 參考文獻 45摘要學校大多要管理成千上萬學生的信息,但仍有很多學校然傳統(tǒng)的管理模式……使用計算機對學生信息進行管理,具有手工管理所無法比擬的優(yōu)點.例如:出錯可能性小、處理效率高、易于管理等等。本系統(tǒng)為學生信息管理系統(tǒng),其開發(fā)主要包括數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。經(jīng)過分析,我們使用了Netbean5.5開發(fā)工具,利用其提供的各種面向對象的開發(fā)工具,在短時間內建立系統(tǒng)應用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成一個滿意的可行系統(tǒng)。關鍵詞:SQLServer2005;jsp;學生信息管理課程設計目的和要求課程設計是為了增強學生對所學課程的理解,學會綜合地、靈活地運用所學課程知識的一個重要的實踐環(huán)節(jié)。本課程設計是應用PHP程序設計語言進行數(shù)據(jù)庫應用系統(tǒng)的開發(fā),用MySQL進行后臺數(shù)據(jù)庫的管理,編寫出某一個小型的高校失物招領管理系統(tǒng)。通過本課程設計可以達成如下目標:1、能夠自覺運用數(shù)據(jù)庫原理的理論知識指導軟件設計;2、學會數(shù)據(jù)庫的設計,并能對設計結果的優(yōu)劣進行正確的評價;3、學會如何組織和編寫信息系統(tǒng)軟件設計文檔和軟件系統(tǒng)的操作說明;4、具有一定的獨立分析問題、解決問題的能力;5、掌握MySQL數(shù)據(jù)庫在信息系統(tǒng)開發(fā)過程中的應用;6、掌握使用網(wǎng)站開發(fā)一般步驟。課程設計的開發(fā)環(huán)境1.操作系統(tǒng):Windows操作系統(tǒng)(XP、Win7、Win8)2.開發(fā)環(huán)境:WampServer集成開發(fā)環(huán)境3.瀏覽器:IE7或IE7以上版本、Firefox、Chrom等主流瀏覽器。4.文本編輯器:記事本、Vim、SublimeText3等。課程設計過程需求分析1.1應用背景21世紀以來,人類經(jīng)濟高速發(fā)展,人們發(fā)生了日新月異的變化,特別是計算機的應用及普及到經(jīng)濟和社會生活的各個領域。使原本的舊的管理方法越來越不適應現(xiàn)在社會的發(fā)展。許多人還停留在以前的手工操作。這大大地阻礙了人類經(jīng)濟的發(fā)展。為了適應現(xiàn)代社會人們高度強烈的時間觀念,學校信息管理系統(tǒng)軟件為學校辦公室?guī)砹藰O大的方便。我們所開發(fā)的這個系統(tǒng)所采用的是當前較為流行的編程軟件Netbean5.5作為實現(xiàn)語言,以數(shù)據(jù)庫MicrosoftSQLServer2005作為系統(tǒng)的后臺操作,其功能在系統(tǒng)內部有源代碼直接完成。我們只需按系統(tǒng)要求輸入即可操作。1.2系統(tǒng)性可行分析(1)經(jīng)濟上可行性:現(xiàn)在,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。而本系統(tǒng)的開發(fā),為學校的工作效率帶來了一個質的飛躍,為此主要表現(xiàn)有以下幾個方面:第一,本系統(tǒng)的運行可以代替人工進行許多繁雜的勞動;第二,本系統(tǒng)的運行可以節(jié)省許多資源;第三,本系統(tǒng)的運行可以大大的提高學校的工作效率;所以,本系統(tǒng)在經(jīng)濟上是可行的。(2)技術上可行性:本系統(tǒng)的開發(fā)我利用MicrosoftSQLServer2005作為本系統(tǒng)的數(shù)據(jù)庫,它是一個支持多用戶的新型數(shù)據(jù)庫,適用于大中規(guī)模的數(shù)據(jù)量需求。學校校園網(wǎng)的建設也為新系統(tǒng)服務器/客戶端的結構提供了硬件的支持。使用Netbean5.5作為系統(tǒng)開發(fā)的開發(fā)環(huán)境,它作為一種現(xiàn)代的編程語言,提供完善的指令控制語句、類與對象的支持及豐富的數(shù)據(jù)類型,給開發(fā)高性能系統(tǒng)提供的保障為開發(fā)滿足客戶要求的系統(tǒng),保證了代碼的模塊化要求,而代碼模塊化的提高,非常有利于以后對新系統(tǒng)的擴展與修改。綜上所述,本系統(tǒng)的設計與開發(fā)在技術上和硬件設備上的條件都是滿足的,因此,它在技術上是可行的。(3)運行上可行性:本系統(tǒng)為一個小型的學生信息管理系統(tǒng),所耗費的資源非常的小,學校的電腦無論是硬件還是軟件都能夠滿足條件,因此,本系統(tǒng)在運行上是可行的。(3)法律可行性:本系統(tǒng)作為數(shù)據(jù)庫達作業(yè)設計,在開發(fā)過程中沒有涉及合同、責任等與法律相抵觸的方面。因此,本系統(tǒng)在法律上是可行的。1.3系統(tǒng)的設計目標(1)節(jié)約資源,提高學籍信息的精確度本系統(tǒng)能減少很多不必要的資源,不用象以前那樣用冗余的紙張式的管理。大節(jié)省了學校能源。并且計算機的存儲與快速查詢功能大大提高了學籍管理的效率,并且還提高了學籍信息管理的精確度。(2)方便快速操作,精減人員,節(jié)約開支方便快速的操作,可減少學籍信息管理的漏洞,又減少因工作的冗余出現(xiàn)的錯誤,并且操作非常簡單,可減少許多不很必要的人員,這無論從物質上還是工作人員的工資上都為學校節(jié)約了開支。為學校增加了財富。(3)具體目標1.采用現(xiàn)有的資源,先進的管理系統(tǒng)開發(fā)方案,充分利用學?,F(xiàn)有的資源,減少開發(fā)中的時間和財力、物力、提高系統(tǒng)開發(fā)的水平和應用效果。2.系統(tǒng)滿足學校的需求,例如學生信息的錄入、查詢、更新等。管理員對用戶的查詢、增加、刪除等。3.系統(tǒng)就具備數(shù)據(jù)庫維護功能,及時根據(jù)用戶需求進行數(shù)據(jù)添加、刪除、修改等操作。1.4系統(tǒng)功能設計權限功能:為用戶設置權限功能,可分為普通用戶,系統(tǒng)管理員。普通用戶只是查詢不能修改,系統(tǒng)管理員能修改、刪除所有信息。錄入功能:系統(tǒng)沒有為普通用戶提供相應的錄入功能,為系統(tǒng)管理員提供對所有信息的錄入功能。查詢功能:為所有用戶提供查詢的功能,可查詢允許范圍內的所有信息。維護功能:為普通用戶提供查詢及相應的修改功能,為系統(tǒng)管理員提供對所有信息的修改刪除功能。幫助功能:能幫助初次使用者對本系統(tǒng)的應用及處理常見的問題。退出功能:結束并關閉系統(tǒng)。本系統(tǒng)適用于中小學校,其功能主要分為四大類:用戶管理:用于對用戶的添加刪除,賦予不同權限及對用戶密碼的修改及查詢。課程管理:用于對各學期課程的開設和查詢。成績管理:用于對成績的添加和查詢。幫助信息:用于對本系統(tǒng)的具體操作進行詳解。1.5數(shù)據(jù)流圖:本系統(tǒng)從總體上分為系統(tǒng)信息管理、學生信息管理、課程管理和成績管理四大部分。每個模塊有自己的作用。下面的各模塊功能流圖就是由各功能之間的關系而得出的。錄入錄入錄入錄入系統(tǒng)管理人員學生信息

成績信息

課程信息

學生數(shù)據(jù)表成績數(shù)據(jù)表課程數(shù)據(jù)表數(shù)據(jù)庫

圖1學籍信息錄入流圖登陸模塊用戶信息用戶信息用戶信息用戶登錄模塊Users表0層圖2登陸模塊0層圖用戶信息用戶信息用戶信息Users表系統(tǒng)管理員用戶信息輸入用戶信息驗證用戶1層圖3登陸模塊1層圖學生信息管理模塊系統(tǒng)管理員系統(tǒng)管理員添加信息刪除信息修改信息查詢信息學生信息學生信息學生信息學生信息學生數(shù)據(jù)表學生數(shù)據(jù)表學生數(shù)據(jù)表學生數(shù)據(jù)表

0層圖4學生信息管理模塊0層圖確認信息確認信息添加學生信息學生信息系統(tǒng)管理員系統(tǒng)管理員學生信息學生數(shù)據(jù)表

1層圖5學生信息管理模塊1層圖(添加)確認刪除信息確認刪除信息查找對應信息輸入刪除條件學生信息學生信息系統(tǒng)管理員系統(tǒng)管理員學生數(shù)據(jù)表1層圖6學生信息管理模塊1層圖(刪除)確認修改信息確認修改信息提交信息輸入修改信息學生信息學生信息系統(tǒng)管理員系統(tǒng)管理員學生數(shù)據(jù)表1層圖7學生信息管理模塊1層圖(修改)查找相應信息查找相應信息提交查詢條件輸入查詢信息學生信息學生信息系統(tǒng)管理員系統(tǒng)管理員學生數(shù)據(jù)表1層圖8學生信息管理模塊(查詢)課程管理模式課程信息課程信息查詢條件課程信息查詢課程信息管理系統(tǒng)管理員

課程數(shù)據(jù)表圖9課程管理數(shù)據(jù)流圖成績信息管理模塊成績查詢成績錄入成績排名按學號成績查詢成績錄入成績排名按學號成績數(shù)據(jù)表

系統(tǒng)管理員

成績管理按課程圖10成績管理數(shù)據(jù)流圖課程數(shù)據(jù)表

備份與還原模塊用戶信息用戶信息系統(tǒng)存儲信息系統(tǒng)存儲信息系統(tǒng)存儲信息系統(tǒng)管理員數(shù)據(jù)庫備份與還原模塊系統(tǒng)管理員系統(tǒng)數(shù)據(jù)庫0層圖11備份與還原模塊0層圖圖12圖12備份與還原模塊1層圖系統(tǒng)管理員系統(tǒng)管理員還原數(shù)據(jù)庫備份數(shù)據(jù)庫系統(tǒng)表系統(tǒng)表用戶請求信息備份好的數(shù)據(jù)數(shù)據(jù)信息1層1.6數(shù)據(jù)字典(1)用戶登錄管理數(shù)據(jù)項:用戶名含義說明:唯一標識每個用戶別名:用戶ID類型:字符型長度:8取值范圍:00000001至99999999取值含義:按順序編號數(shù)據(jù)結構:用戶名含義說明:是學生信息管理系統(tǒng)的用戶驗證數(shù)據(jù)結構,定義了用戶的登錄賬戶信息組成:登錄名,登錄密碼數(shù)據(jù)流:用戶信息說明:用戶賬戶登錄系統(tǒng)的相關信息數(shù)據(jù)流來源:用戶數(shù)據(jù)流去向:用戶信息驗證組成:登錄名,登錄密碼數(shù)據(jù)存儲:用戶信息表說明:用戶的登錄信息的輸入與存儲流入數(shù)據(jù)流:用戶信息流出數(shù)據(jù)流:用戶信息組成:登錄名,登錄密碼數(shù)據(jù)量:500M存取方式:隨機存取處理過程:用戶信息錄入說明:用戶輸入的有關信息錄入到用戶表當中輸入:登錄名,登錄密碼輸出:登錄名處理:用戶輸入各項數(shù)據(jù)與各項屬性相對應處理過程:用戶信息驗證說明:用戶輸入的有關信息在用戶表中進行驗證輸入:登錄名,登錄密碼輸出:登錄名處理:用戶輸入各項數(shù)據(jù)與各項屬性相對應且相同則能成功登錄系統(tǒng)(2)學生信息管理數(shù)據(jù)項:學號含義說明:對每一位學生進行的編號別名:學生編號類型:字符型長度:8取值范圍:00000000至99999999取值含義:前兩位標別該學生所在年級,后六位按順序編號數(shù)據(jù)結構:學生含義說明:是學籍管理子系統(tǒng)的主體數(shù)據(jù)結構,定義了一個學生的有關信息組成:學號,姓名,性別,年齡,系別號,電話,地址,入學時間數(shù)據(jù)流:學生信息說明:學生身份的相關信息數(shù)據(jù)流來源:用戶請求數(shù)據(jù)流去向:學生數(shù)據(jù)表組成:學號數(shù)據(jù)存儲:學生數(shù)據(jù)表說明:記錄學生的相關信息流入數(shù)據(jù)流:學生信息流出數(shù)據(jù)流:學生信息組成:學號,姓名,性別,年齡,系別號,電話,地址,入學時間數(shù)據(jù)量:500M存取方式:隨機存取處理過程:信息添加說明:添加新入學的學生相關信息輸入:學號,姓名,性別,年齡,系別號,電話,地址,入學時間輸出:學號,姓名,性別,年齡,系別號,電話,地址,入學時間處理:用戶輸入學號等每一項的相關數(shù)據(jù)后,存入學生數(shù)據(jù)表,然后顯示給用戶處理過程:信息刪除說明:刪除退學等特殊情況的學生相關信息輸入:學號輸出:學號,姓名,性別,年齡,系別號,電話,地址,入學時間處理:用戶輸入學號后查找到該條記錄,然后刪除這一整條記錄處理過程:信息修改說明:修改相關學生的相關信息輸入:學號/姓名/性別/年齡/系別號/電話/地址/入學時間輸出:學號,姓名,性別,年齡,系別號,電話,地址,入學時間處理:用戶輸入相關修改信息后,修改該條記錄的部分信息處理過程:信息查詢說明:查詢學生的相關信息輸入:學號輸出:學號,姓名,性別,年齡,系別號,電話,地址,入學時間處理:用戶輸入查詢條件學號后,輸出該學生的記錄信息(3)課程信息管理數(shù)據(jù)項:課程號含義說明:對每一位學生可以選擇的課程進行的編號別名:課程編號類型:字符型長度:8取值范圍:00000000至99999999取值含義:按順序對各種課程進行編號數(shù)據(jù)結構:課程含義說明:是學生課程信息管理系統(tǒng)的重要數(shù)據(jù)結構,定義了有關課程的有關信息組成:課程號,課程名,教師號,學分,系別號數(shù)據(jù)流:課程信息說明:學生選擇課程的相關信息數(shù)據(jù)流來源:用戶數(shù)據(jù)流去向:用戶組成:課程號,課程名數(shù)據(jù)流:課程信息說明:學生選擇課程的相關信息數(shù)據(jù)流來源:課程表,用戶數(shù)據(jù)流去向:用戶組成:課程號,課程名,學分數(shù)據(jù)存儲:課程數(shù)據(jù)說明:學生選課相關信息流入數(shù)據(jù)流:學生選課流出數(shù)據(jù)流:學生選課組成:課程號,系別號數(shù)據(jù)量:500M存取方式:隨機存取數(shù)據(jù)存儲:課程數(shù)據(jù)說明:學生選課相關信息流入數(shù)據(jù)流:學生課程號流出數(shù)據(jù)流:課程號,課程名,學分組成:課程號,課程名,學分數(shù)據(jù)量:500M存取方式:隨機存取處理過程:信息錄入說明:錄入用戶輸入的學生選課信息輸入:課程號,系別號輸出:課程號,課程名,學分處理:用戶輸入后將相關信息處理后記錄到課程數(shù)據(jù)表中。處理過程:信息查詢說明:用戶查詢時輸出用戶輸出查詢的學生選課信息輸入:課程號,系別號輸出:課程號,課程名,學分處理:用戶輸入后將相關信息處理后顯示給用戶的界面,且只能輸出相應的課程和相應的系別的信息。(4)成績信息管理數(shù)據(jù)項:學號含義說明:對每一位學生唯一的編號別名:學生編號類型:字符型長度:8取值范圍:00000000至99999999取值含義:前兩位標別該學生所在年級,后六位按順序編號數(shù)據(jù)結構:成績含義說明:是學生成績管理系統(tǒng)的主體數(shù)據(jù)結構,定義了一個學生成績的有關信息組成:學號,課程號,成績,學分數(shù)據(jù)流:學生成績說明:學生各科成績的相關信息數(shù)據(jù)流來源:成績表,課程表數(shù)據(jù)流去向:用戶組成:學號數(shù)據(jù)流:學生成績說明:學生各科成績的相關信息數(shù)據(jù)流來源:成績表,課程表數(shù)據(jù)流去向:用戶組成:科目數(shù)據(jù)流:學生成績說明:學生各科成績的相關信息數(shù)據(jù)流來源:用戶數(shù)據(jù)流去向:成績表組成:學號,課程號,成績,學分數(shù)據(jù)存儲:成績排名說明:學生的成績的排序流入數(shù)據(jù)流:學生成績流出數(shù)據(jù)流:學生成績組成:學號,課程名,成績數(shù)據(jù)量:500M存取方式:隨機存取數(shù)據(jù)存儲:成績數(shù)據(jù)表說明:學生的成績信息的輸入與存儲流入數(shù)據(jù)流:學生成績流出數(shù)據(jù)流:學生成績組成:學號,課程名,成績,學分數(shù)據(jù)量:500M存取方式:隨機存取處理過程:成績查詢說明:查詢用戶想要查詢的學生成績信息輸入:學號或科目輸出:課程名,成績處理:用戶輸入學號后只能輸出相應學生的課程名和成績,不得輸出其他學生的信息處理過程:成績錄入說明:用戶輸入的有關信息錄入到成績表當中輸入:學號,課程名,成績,學分處理:用戶輸入各項數(shù)據(jù)與各項屬性相對應概念設計分E-R圖概念設計階段是將需求分析得到的用戶需求抽象為信息結構即概念模型的設計過程就是概念結構設計。以此作為各種數(shù)據(jù)模型的共同基礎,從而能更好地、更準確地用某一DBMS實現(xiàn)這些需求。概念設計是對現(xiàn)實世界的一種抽象,概念結構獨立于數(shù)據(jù)庫的邏輯結構,也獨立于支持數(shù)據(jù)庫的DBMS。概念結構設計是整個數(shù)據(jù)庫設計的關鍵。描述概念模型的工具是E-R圖。NNM選修課程編號ID增加時間圖13選修分E—R圖名稱成績學生姓名性別班級電話籍貫學號出生年月增加時間ID11M屬于圖14學生班級分E—R圖學生姓名性別班級電話籍貫學號出生年月增加時間ID名稱ID院系班級班主任增加時間MM1開設圖15班級課程分E—R圖課程編號ID增加時間名稱名稱ID院系班級班主任增加時間總E-R圖用戶用戶密碼ID圖16用戶E—R圖用戶名添加時間對每個實體定義的屬性如下:對每個實體定義的屬性如下:學生(學號,姓名,性別,出生年月,班級,電話,籍貫,ID,增加時間)系別(名稱,院系,班主任,ID,增加時間)課程(編號,名稱,ID,增加時間)N學生屬于班級選修課程開設M111M圖17學生信息管理總E—R圖成績邏輯結構邏輯結構設計的任務是:把概念結構設計階段設計好的基本E-R圖轉換為與選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結構。概念結構是各種數(shù)據(jù)模型的共同基礎,為了能夠用某一DBMS實現(xiàn)用戶需求,還必須將概念結構進一步轉化為相應的數(shù)據(jù)模型,這正是數(shù)據(jù)庫邏輯結構設計所要完成的任務。邏輯結構設計的步驟將概念結構轉換為一般的關系、網(wǎng)狀、層次數(shù)據(jù)模型;將轉換來的關系、網(wǎng)狀、層次數(shù)據(jù)模型向特定DBMS支持下的數(shù)據(jù)模型轉換;對數(shù)據(jù)模型進行優(yōu)化。關系數(shù)據(jù)庫規(guī)范化理論是關系數(shù)據(jù)庫邏輯設計的一個理論指南。規(guī)范化理論研究了關系模式中各屬性之間的依賴關系及其對關系模式性能的影響,探討好的關系模式應該具備的性質以及達到好的關系模式的方法。規(guī)劃化理論為我們提供了判斷關系模式好壞的理論標準,幫助預測可能出現(xiàn)的問題,是數(shù)據(jù)庫設計人員的有力工具,同時也使數(shù)據(jù)庫設計有了嚴格的理論基礎。關系數(shù)據(jù)庫的規(guī)范化主要包括三個方面的內容:函數(shù)依賴,范式和模式設計。其中函數(shù)依賴起著核心的作用,是模式分解和模式設計的基礎,范式是模式分解的標準。3.1關系模式輸出:學號,課程名,成績學生(學號,姓名,班級,性別,出生年月,籍貫,電話,備注,添加時間)主鍵為:學號外鍵為:班級達到3NF班級(名稱,院系,班主任,添加時間)主鍵為:名稱達到3NF課程(編號,名稱,添加時間)主鍵為:編號達到3NF成績(學號,姓名,編號,成績,添加時間)主鍵為:(學號,編號)外鍵為:學號,編號達到1NF用戶(用戶ID,用戶名,密碼,權限,添加時間)主鍵:用戶ID達到3NF對于各關系模式所屬范式的分析如下:(1)“學生”關系模式的分析:候選鍵為學號,關系模式蘊含的函數(shù)依賴有:學號姓名,班級,性別,出生年月,籍貫,電話,備注,添加時間。班級為引用班級表的“班級”外鍵。因此,主屬性為學號,非主屬性為姓名,性別,出生年月,班級,電話,籍貫,備注,添加時間。在這個關系中,不存在非主屬性對碼的部分函數(shù)依賴及傳遞函數(shù)依賴,又因為本關系模式中,存在函數(shù)依賴決定因素為非碼的情況,所以用戶不屬于BCNF。因而,根據(jù)3NF的定義,用戶∈3NF。(2)“班級”關系模式的分析:候選鍵為名稱,關系模式蘊含的函數(shù)依賴有:名稱院系,班主任,添加時間。因此,主屬性為名稱,非主屬性為院系,班主任,添加時間。在這個關系中,不存在非主屬性對碼的部分函數(shù)依賴及傳遞函數(shù)依賴,又因為本關系模式中,存在函數(shù)依賴決定因素為非碼的情況,所以用戶不屬于BCNF。因而,根據(jù)3NF的定義,用戶∈3NF。(3)“課程”關系模式分析:候選鍵為編號,關系模式蘊含的函數(shù)依賴有:編號名稱,添加時間。因此,主屬性為編號,非主屬性為名稱,添加時間。在這個關系中,不存在非主屬性對碼的部分函數(shù)依賴及傳遞函數(shù)依賴,又因為本關系模式中,存在函數(shù)依賴決定因素為非碼的情況,所以用戶不屬于BCNF。因而,根據(jù)3NF的定義,用戶∈3NF。(4)“成績”關系模式的分析:主鍵為(學號,編號),關系模式蘊含的函數(shù)依賴有:(學號,編號)成績,添加時間,學號姓名。同時,單一的學號和編號只能作為外鍵,與學生表,課程表建立完整性連接。因此主屬性為學號,編號。非主屬性為成績,用戶,姓名,添加時間。在這個關系中,非主屬性均部分依賴于碼。因此關系模式成績不符合2NF。所以成績∈1NF(5)“用戶”關系模式的分析:主鍵為用戶,關系模式蘊含的函數(shù)依賴有:用戶用戶名,密碼,權限,添加時間。因此主屬性為用戶,非主屬性為用戶名,密碼,權限,添加時間。在這個關系中,不存在非主屬性對碼的部分函數(shù)依賴及傳遞函數(shù)依賴,因而,根據(jù)3NF的定義,又因為本關系模式中,存在函數(shù)依賴決定因素為非碼的情況,所以用戶不屬于BCNF。因此關系模式用戶∈3NF。3.2關系表表1用戶表結構字段名類型中文名備注IDvarchar(50)用戶ID主鍵usernamevarchar(50)用戶名非空pwdvarchar(50)密碼唯一約束cxvarchar(50)權限非空addtimesmalldatetime添加時間默認約束(獲取當前時間)表2班級表結構字段名類型中文名備注mingchengVarchar(50)名稱主鍵yuanxiVarchar(50)院系不為空banzhurenVarchar(50)班主任不為空addtimesmalldatetime添加時間默認約束(獲取當前時間)表3學生表結構字段名類型中文名備注xuehaoVarchar(50)學號主鍵xingmingVarchar(50)姓名不為空banjiVarchar(50)班級不為空xingbieChar(2)性別檢查約束(男或女)chushengnianyueVarchar(50)出生年月不為空jiguanVarchar(50)籍貫不為空dianhuaChar(22)電話唯一性約束beizhuVarchar(50)備注不為空addtimesmalldatetime添加時間默認約束(獲取當前時間)表4成績表結構字段名類型中文名備注xuehaoVarchar(50)學號主鍵,與cno組成主鍵,參照表studentxingmingVarchar(50)姓名不為空bianhaoVarchar(50)編號外鍵chengjiVarchar(50)成績addtimesmalldatetime添加時間默認約束(獲取當前時間)表5課程表結構字段名類型中文名備注bianhaoVarchar(50)編號主鍵mingchengVarchar(50)名稱不為空addtimesmalldatetime添加時間默認約束(獲取當前時間)物理結構4.1關系模式存取方法的選擇該系統(tǒng)選擇索引存取的方法。索引存取方法實際上是根據(jù)應用要求確定對關系的哪些屬性列建立索引、哪些屬性列建立組合索引、哪些索引要求設計為唯一索引等?,F(xiàn)將在該數(shù)據(jù)庫中創(chuàng)建下列索引:users表關于id升序、的唯一索引,語句如下:CREATEUNIQUEINDEXindex_usrONusers(idASC);student表關于sno升序、sdept升序唯一索引,語句如下:CREATEUNIQUEINDEXindex_stuONxuesheng(snoASC,sdeptASC);class表關于cno升序、credit降序、sdept升序的唯一索引,語句如下:CREATEUNIQUEINDEXindex_claONbanji(cnoASC,creditDESC,sdeptASC);dept表關于sdept升序的唯一索引,語句如下:CREATEUNIQUEINDEXindex_depONkecheng(sdeptASC);grade表關于sno升序、credit降序、cno升序的唯一索引,語句如下:CREATEUNIQUEINDEXindex_graONchengji(snoASC,cnoASC,creditDESC);4.2確定數(shù)據(jù)庫的存儲結構確定數(shù)據(jù)庫物理結構主要指確定數(shù)據(jù)的存放位置和存儲結構,需要綜合考慮數(shù)據(jù)的存取時間、存儲空間利用率和維護代價。該系統(tǒng)將采用主數(shù)據(jù)庫和副數(shù)據(jù)庫兩個數(shù)據(jù)庫。針對users表,該表只在登錄和退出時被訪問,訪問量較小,所以將該表放在主數(shù)據(jù)庫中。由于users表的數(shù)據(jù)相對穩(wěn)定,主數(shù)據(jù)庫選擇放置于是單個磁盤上,目的是便于維護,增強數(shù)據(jù)的安全性。針對xuesheng表,banji表,chengji表,kecheng表,alluser表,有較大的瞬時訪問量,故將在數(shù)據(jù)庫中放置。數(shù)據(jù)庫實施5.1創(chuàng)建數(shù)據(jù)庫CreatedatabasejspxscjOn(name=jspxscj_Data,Filename='f:\jspxscj_Data.mdf',Size=10mb,Maxsize=500mb,Filegrowth=20mb)Logon(name=jspxscj_Log,Filename='f:\jspxscj_Log.ldf',Size=10mb,Maxsize=500mb,Filegrowth=10%)5.2創(chuàng)建表Createtableallusers(IDvarchar(50)primarykey,Usernamevarchar(50)notnull,Pwdvarchar(50)notnullconstraintunq_pwdunique,Cxvarchar(50)notnull,addtimesmalldatetimeconstraintdefault_timedefault(getdate()))Createtablexuesheng(IDvarchar(50)referencesallusers(ID),Xuehaovarchar(50)primarykey,xingmingvarchar(50)notnull,banjivarchar(50)notnull,xingbiechar(2)constraintcheck_sexcheck(ssexin('男','女')),chushengnianyuevarchar(50)notnull,jiguanvarchar(50)notnull,dianhuachar(22)constraintunq_telunique,beizhuvarchar(50)notnull,addtimesmalldatetimeconstraintdefault_timedefault(getdate()))Createtablebanji(mingchengvarchar(50)PRIMARYkey,IDvarchar(50)referencesallusers(ID),Yuanxivarchar(50)notnull,Banzhurenvarchar(50)notnull,addtimesmalldatetimeconstraintdefault_timedefault(getdate()))Createtablechengji(IDvarchar(50)referencesallusers(ID),Xuehaovarchar(50)referencesxuesheng(xuehao),xingmingvarchar(50)notnull,bianhaovarchar(50)referenceskecheng(bianhao),chengjivarchar(50),addtimesmalldatetimeconstraintdefault_timedefault(getdate()),Primarykey(xuehao,bianhao))Createtablekecheng(bianhaovarchar(50)primarykey,IDvarchar(50)referencesallusers(ID),Mingchengvarchar(50)notnull,addtimesmalldatetimeconstraintdefault_timedefault(getdate()))5.3插入數(shù)據(jù)Insertintoallusers(ID,username,pwd,cx)Values(‘1’,’admin’,’admin’,’超級管理員’)Insertintobanji(ID,mingcheng,yuanxi,banzhuren)Values(‘1’,’A05’,’信息學院’,’張學友’)Insertintobanji(ID,mingcheng,yuanxi,banzhuren)Values(‘2’,’B04’,’外語系’,’王菲’)以下略Insertintochengji(ID,xuehao,xingming,kecheng,chengji)Values(‘1’,’X003’,’蘇有朋’,’工商管理’,’87’)Insertintochengji(ID,xuehao,xingming,kecheng,chengji)Values(‘2’,’X003’,’蘇有朋’,’英語’,’89’)Insertintochengji(ID,xuehao,xingming,kecheng,chengji)Values(‘3’,’X002’,’陳志朋’,’數(shù)學’,’82’)以下略Insertintokecheng(ID,bianhao,mingcheng)Values(‘1’,’K001’,’語文’)Insertintokecheng(ID,bianhao,mingcheng)Values(‘2’,’K002’,’數(shù)學’)以下略Insertintoxuesheng(ID,xuehao,xingming,banji,xingbie,chushengnianyue,jiguan,beizhu,mima)Values(‘1’,’X001’,’吳奇隆’,’C07’,’男’,’2010-03-08’,’浙江溫州’,’1326948754’,’fewfew’,null)以下略備份和還原數(shù)據(jù)庫故障是不可避免的,常見的有計算機硬件故障、系統(tǒng)軟件和應用軟件的操作、操作員的失誤,惡意的破壞等。數(shù)據(jù)庫管理系統(tǒng)對故障的運行未能至正常終止點就夭折。所以需要備份和還原。6.1創(chuàng)建備份設備EXECsp_addumpdevice'disk','jspxscj_backup','f:/jspxscj/jspxscj_backup.bak'6.2完整數(shù)據(jù)庫備份backupdatabasejspxscjtojspxscj_backupwithingo備份數(shù)據(jù)庫中當前所有數(shù)據(jù),包括事務日志6.3差異數(shù)據(jù)庫備份backupdatabasejspxscjtojspxscj_backupwithdifferentialgo備份自上次完整數(shù)據(jù)庫備份喲來更改的數(shù)據(jù)6.4事務日志備份backuplogjspxscjtojspxscj_backup備份自上次備份以來數(shù)據(jù)變化的過程6.5還原完整數(shù)據(jù)庫備份restoredatabasejspxscjtojspxscj_backupwithnorecoverygo6.6還原差異數(shù)據(jù)庫備份restoredatabasejspxscjtojspxscj_backupwithfile=2go6.7指定還原后的數(shù)據(jù)庫物理文件名稱及路徑restoredatabasejspxscjfromdisk='f:/jspxscj/jspxscj_backup.bak'withmove'jspxscj'to'f:/jspxsjc1/jspxscj.mdf'move'jspxscj_log'to'f:/jspxsjc1/jspxscj.ldf'界面設計及程序邏輯代碼設計開發(fā)工具簡介1.1JSP簡介JSP是Java

Server

Page技術的縮寫,是由Java語言的創(chuàng)造者Sun公司提出、多家公司參與制定的動態(tài)網(wǎng)頁技術標準。通過在傳統(tǒng)的(*.html,*.htm)中加入Java代碼和JSP標記,構成后綴為*.jsp的JSP網(wǎng)頁文件。

Web服務器在遇到訪問JSP頁面的請求時,首先執(zhí)行其中的代碼片斷,然后將執(zhí)行的結果以普通HTML方式返回客戶瀏覽器,JSP頁面中的程序代碼在客戶端是看不到的。這些內嵌的Java程序代碼可以完成數(shù)據(jù)庫的操作、文件上傳、網(wǎng)頁重定向、發(fā)送電子郵件的等功能,所有的操作均在服務器端進行,客戶端得到的僅僅是運行的結果,因而對客戶瀏覽器的要求很低。

JSP有Java

Servlet技術為基礎,利用可跨平臺運行的Java

Beans組件,可以方便的操作數(shù)據(jù)庫,執(zhí)行各種復雜的查詢,使邏輯處理和顯示互相分離。1.2JSP的優(yōu)點(1)JSP的最大優(yōu)勢在于平臺可移植性,利用Java語言的平臺無關性,任何JSP程序只要編譯一次,就可以在任何服務器平臺使用。(2)JSP在服務器端被Java

虛擬機編譯成Servlet執(zhí)行,編譯的過程只在第一次執(zhí)行時進行,以后Servlet對于每個客戶端請求都使用內存中的同一副本處理,而不像CGI那樣需要為每個請求創(chuàng)建單獨的進程,而只要在Java虛擬機中裝載一個Servlet

,因而節(jié)省了大量的服務器資源,執(zhí)行時性能優(yōu)化,代碼效率高。

1.3Servlet簡介在Web服務器端加載并運行的Java應用程序,具體運行在Servlet引擎管理的JVM上。Servlet容器負責Servlet和用戶的通信以及調用Servlet的方法。Servlet和用戶的通信采用請求/響應模式。用于以動態(tài)響應客戶機請求形式擴展Web服務器(WebContainer)的功能。Servlet是開發(fā)服務器端應用程序的一個很好選擇,Servlet與JSP結合使用,能提供更強大的服務器端功能。1.4Tomcat介紹Tomcat服務器是一個免費的開放源代碼的Web應用服務器,是Apache軟件基金會的Jakarta項目中的一個核心項目,由Apache、Sun和其他一些學校及個人共同開發(fā)而成。由于有了Sun的參與和支持,最新的Servlet和JSP規(guī)范總是能在Tomcat中得到體現(xiàn),Tomcat5支持最新的Servlet2.4和JSP2.0規(guī)范。因為Tomcat技術先進、性能穩(wěn)定,而且免費,因而深受Java愛好者的喜愛并得到了部分軟件開發(fā)商的認可,成為目前比較流行的Web應用服務器。Tomcat很受廣大程序員的喜歡,因為它運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務等開發(fā)應用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat是一個小型的輕量級應用服務器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調試JSP程序的首選。對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache服務器,可利用它響應對HTML頁面的訪問請求。實際上Tomcat部分是Apache服務器的擴展,但它是獨立運行的,所以當你運行tomcat時,它實際上作為一個與Apache獨立的進程單獨運行的。自從JSP發(fā)布之后,推出了各式各樣的JSP引擎。ApacheGroup在完成GNUJSP1.0的開發(fā)以后,開始考慮在SUN的JSWDK基礎上開發(fā)一個可以直接提供Web服務的JSP服務器,當然同時也支持Servlet,這樣Tomcat就誕生了。Tomcat是jakarta項目中的一個重要的子項目,其被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的java產(chǎn)品,同時它又是sun公司官方推薦的servlet和jsp容器,因此其越來越受到軟件公司和開發(fā)人員的喜愛。servlet和jsp的最新規(guī)范都可以在tomcat的新版本中得到實現(xiàn)。其次,Tomcat也是完全免費的軟件,任何人都可以從互聯(lián)網(wǎng)上自由地下載。系統(tǒng)的主界面2.1登陸界面圖18登陸界面2.2學生界面圖19學生界面2.3教師界面圖20教師界面2.4管理員界面圖21管理員界面2.5添加班級界面圖22添加班級界面2.6刪除班級界面圖23刪除班級界面2.7修改密碼界面圖24修改密碼界面2.8查找學生界面圖25查找學生界面連接SQLSever數(shù)據(jù)庫數(shù)據(jù)庫驅動privatestaticfinalStringDRIVER="com.microsoft.sqlserver.jdbc.SQLServerDriver";數(shù)據(jù)庫連接字符串privatestaticfinalStringURL="jdbc:sqlserver://localhost:1433;dataBaseName=addstudent";/** *得到數(shù)據(jù)庫連接 */ publicConnectiongetConnection()throwsClassNotFoundException,SQLException{ Class.forName(DRIVER); //注冊驅動 Connectioncon=DriverManager.getConnection(URL,NAME,PASS); returncon; }數(shù)據(jù)庫帳號privatestaticfinalStringNAME="sa";數(shù)據(jù)庫密碼privatestaticfinalStringPASS="sa";本系統(tǒng)模塊以及詳細說明4.1登錄模塊:1)功能描述:提供用戶登錄和退出系統(tǒng)的功能,以此來鑒別用戶。2)設計思路:通過前臺登錄頁面,讓用戶輸入用戶名和密碼,發(fā)送給后臺處理,從allusers表,jiaoshi表或xuesheng表中進行匹配,匹配成功,則登錄成功,并跳轉到主頁;匹配失敗,則登錄失敗,提示用戶用戶名或密碼錯誤。3)編寫代碼:參考同組周程、李孝森報告4.2用戶(管理員)管理模塊1)功能描述:提供系統(tǒng)管理員管理和修改密碼功能。2)設計思路:通過前臺系統(tǒng)管理員管理和修改密碼頁面,讓用戶輸入用戶名和密碼,確認密碼,原密碼,新密碼,確認密碼,發(fā)送給后臺處理,輸入或調用allusers表。3)編寫代碼:參考同組周程、李孝森報告4.3學生管理模塊1)功能描述:提供添加學生和管理學生功能2)設計思路:通過前臺的指引導航,用戶點擊進入添加學生和管理學生模塊,輸入學號,密碼,班級,性別,姓名,籍貫,電話,出生年月和注輸入xuesheng表,輸入學號調用xuesheng表,篩選從xuesheng表中輸出需要的信息。3)編寫代碼:參考同組周程、李孝森報告4.4課程管理模塊1)功能描述:提供添加課程和管理課程功能2)設計思路:通過前臺的指引導航,用戶點擊進入添加課程和管理課程模塊,輸入編號和名稱輸入kecheng表,輸入編號調用kecheng表,篩選從kecheng表中輸出需要的信息。3)編寫代碼:參考同組周程、李孝森報告課程設計體會首先,在全組討論下,確立了這個題目,這個題目在其他的課設中也有所涉及,所以決定沿用以前的,用不同的方式做出相同的功能。兩個星期的課設雖然有些疲勞和困倦,但帶給我很多的收獲。SQLServer已經(jīng)學了一個學期了,掌握了不少,可關于完成一份課設,有些知識都存在似懂非懂的現(xiàn)象,這種現(xiàn)象通過實際的上機操作,通過老師的講解,通過小組討論,已經(jīng)減少了許多。對這些知識也有了更深的理解和很好的掌握。這次的課程設計,真是讓我充分的感覺到了要設計一個程序是多么的難。在這個程序的設計過程中,我清楚的意識到自己的水平有多么的薄弱,課程的知識學得有多么的不扎實。這次課設開始分組時,我與同組成員相沖突,在老師的調節(jié)下,我臨時改變任務,臨危受命讓我措手不及,數(shù)據(jù)庫的備份與還原,感覺沒有怎么練過手。但當后期慢慢平靜后,通過書本和往期的練習,我順利完成一切,成功完成任務。以后還會有很多的課程設計,一定要吸取這次的教訓,把知識學懂學透學精,真正的為我所用,這樣臨時受命是才不會害怕,走上社會時才能真正的發(fā)揮所長。這次的小組合作,不僅練習了課設內容,也鍛煉了合作能力。用戶系統(tǒng)使用說明書用戶登陸打開網(wǎng)頁,可見登陸界面如圖18所示,,輸入正確的用戶ID,密碼,選擇正確的角色,單擊登陸系統(tǒng),即可登陸。若ID或密碼出錯或者不存在,提醒登陸出錯,如圖25所示。圖25你輸入的用戶不存在或密碼錯誤,請重新登陸管理員權限可以利用管理員權限進行相應的用戶管理,班級管理,教師管理,學生管理,課程管理操作。如圖21所示。教師權限教師登陸成功后利用教師所有的權限進行相應的用戶管理,成績管理操作,如圖20所示。學生權限利用學生擁有的權限進行相應的用戶管理操作,如圖19所示。班級管理管理員登陸成功后進行班級管理(班級添加、班級管理)根據(jù)內容相應填寫后點擊提交,書寫錯誤則點擊重置修改。如圖22所示。根據(jù)班級名稱查找到符合要求班級后,可進行修改、刪除操作,如圖23所示。教師管理管理員登陸成功后進行教師管理(教師添加、教師管理)。根據(jù)相應內容填寫后提交,如圖26所示。圖26教師添加界面根據(jù)工號查找到符合要求的教師后,可進行修改、刪除操作。如圖27所示。圖27教師管理界面學生管理管理員登陸成功后進行學生管理(學生添加、學生管理)。根據(jù)相應內容填寫后提交,如圖28所示。圖28添加學生界面根據(jù)學號查找到符合條件的學生后,進行修改、刪除操作,如圖29所示。圖29管理學生界面課程管理管理員登陸成功后進行課程管理(課程添加、課程管理)。根據(jù)相應內容填寫后提交,如圖30所示。圖30添加課程界面根據(jù)編號查找到符合條件的課程,進行修改、刪除操作,如圖31所示。圖31管理課程界面成績管理教師登陸成功后進行成績管理(添加成績,管理成績)。根據(jù)相應內容填寫后提交,如圖32所示。圖32添加成績界面根據(jù)編號查找到相應成績表,進行修改,刪除操作,如圖33所示。圖33管理成績界面用戶管理在管理員,教師,學生的權限中都存在用戶管理(修改個人信息,修改個人密碼,學生多出成績查詢)以學生角色為例:根據(jù)相應內容填寫后點擊提交,將一條記錄插入數(shù)據(jù)表中,如圖34所示。圖34修改個人信息界面正確輸入原密碼后輸入新密碼并進行確認,修改數(shù)據(jù)表中相應的數(shù)據(jù),如圖24所示。輸入課程號,顯示相應的成績列表查看。如圖35所示。圖35查詢成績界面系統(tǒng)測試測試項目名稱及測試內容測試項目名稱:學生信息管理系統(tǒng)測試內容:0001管理員登陸管理功能測試0002教師登陸管理功能測試0003學生登錄管理功能測試0004管理員權限功能測試0005教師權限功能測試0006老師權限功能測試測試用例2.1輸入0001基本用戶登陸的用戶名和密碼0002以管理員權限為例,修改個人信息。0003以管理員權限為例

溫馨提示

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

最新文檔

評論

0/150

提交評論