數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)1_第1頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)1_第2頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)1_第3頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)1_第4頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)1_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)據(jù)庫(kù)原理課程設(shè)計(jì) 報(bào)告學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)生姓名班級(jí)D計(jì)算機(jī)131學(xué)號(hào)指導(dǎo)教師李萍完成日期2015年 7月10日信息學(xué)院1項(xiàng)目基本內(nèi)容21.1項(xiàng)目名稱21.2學(xué)生成績(jī)管理系統(tǒng)開(kāi)發(fā)背景和意義31.3設(shè)計(jì)目的32 開(kāi)發(fā)系統(tǒng)的工具,技術(shù),開(kāi)發(fā)環(huán)境的選擇42.1Eclipse42.2 SQL Server 201252.3簡(jiǎn)單介紹本系統(tǒng)實(shí)現(xiàn)內(nèi)容53 可行性設(shè)計(jì)63.1社會(huì)可行性63.2技術(shù)可行性63.3 經(jīng)濟(jì)可行性63.4 操作可行性63.5設(shè)計(jì)原則74 需求分析74.1 開(kāi)發(fā)目的74.2 功能需求74.3 數(shù)據(jù)需求84.4數(shù)據(jù)流圖95 數(shù)據(jù)庫(kù)關(guān)系設(shè)計(jì)105.1表格設(shè)計(jì)105.

2、2 系統(tǒng)設(shè)計(jì)115.3全局ER圖116 學(xué)生成績(jī)管理系統(tǒng)功能測(cè)試126.1功能測(cè)試126.2測(cè)試總結(jié)157 結(jié)論167.1系統(tǒng)優(yōu)缺點(diǎn)分析167.2經(jīng)驗(yàn)總結(jié)16附錄171.登錄界面程序段172.插入程序段183.刪除程序段211項(xiàng)目基本內(nèi)容1.1項(xiàng)目名稱學(xué)生成績(jī)管理系統(tǒng)概述1.2學(xué)生成績(jī)管理系統(tǒng)開(kāi)發(fā)背景和意義當(dāng)今已是計(jì)算機(jī)發(fā)達(dá)的21世紀(jì),科技的發(fā)展之快用日新月異來(lái)形容已毫不為過(guò),許許多多的產(chǎn)業(yè)均已將先進(jìn)的計(jì)算機(jī)科學(xué)應(yīng)用到實(shí)踐當(dāng)中,并取得了空前輝煌的,質(zhì)的飛躍。但是,在技術(shù)發(fā)展的搖籃、本身技術(shù)實(shí)力雄厚的大學(xué)校園中,卻還存在著相對(duì)比較落后的人工管理系統(tǒng),不得不令人感到驚訝。而這些系統(tǒng)中比較突出的就是

3、學(xué)生的成績(jī)管理系統(tǒng)。當(dāng)今的大學(xué),學(xué)生多則數(shù)萬(wàn),少則亦有幾千,擴(kuò)招每年為國(guó)家多輸送了千千萬(wàn)萬(wàn)的人才,然而,學(xué)校的壓力卻是每年的劇增,尤其在學(xué)生成績(jī)的管理上,依舊使用著較為落后的人工檔案管理系統(tǒng),使用上的不便與維護(hù)上的開(kāi)銷日益凸顯。手工錄入、修改成績(jī),教師耗時(shí)耗力,工作繁瑣,壓力沉重,準(zhǔn)確性還非常沒(méi)有保證,學(xué)生查詢成績(jī),排隊(duì)、辦手續(xù)、找檔案,相當(dāng)?shù)馁M(fèi)時(shí)間且不方便,這樣一個(gè)臃腫的管理系統(tǒng)不但耗費(fèi)了大量的人力、物力、財(cái)力資源,管理的效率也是愈來(lái)愈低下學(xué)生成績(jī)管理系統(tǒng)是應(yīng)對(duì)學(xué)生人數(shù)增多、信息量增大的問(wèn)題,實(shí)現(xiàn)管理的現(xiàn)代化、網(wǎng)絡(luò)化,逐步擺脫當(dāng)前學(xué)生成績(jī)管理的人工管理方式,提高成績(jī)管理效率而開(kāi)發(fā)的。希望該開(kāi)

4、發(fā)程序能夠解決學(xué)生信息存儲(chǔ)、學(xué)生成績(jī)查詢、錄入還有課程查詢等一系列需求,使教師與學(xué)生在對(duì)成績(jī)系統(tǒng)的錄入、修改、查詢等使用上得到極大的便利。1.3設(shè)計(jì)目的本章主要介紹了學(xué)生成績(jī)管理信息系統(tǒng)的發(fā)展和設(shè)計(jì)本系統(tǒng)的必要性以及要研究的問(wèn)題和解決的技術(shù)問(wèn)題。21世紀(jì)是信息產(chǎn)業(yè)大發(fā)展和全面應(yīng)用的世紀(jì),隨著計(jì)算機(jī)技術(shù)在我國(guó)的日益普及,它的應(yīng)用已經(jīng)從各種科學(xué)計(jì)算、實(shí)時(shí)控制等方面逐漸擴(kuò)展到了非數(shù)值處理的各個(gè)領(lǐng)域,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能早已被人們認(rèn)識(shí)并認(rèn)同,它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。隨著學(xué)校向全國(guó)及至世界范圍的持續(xù)擴(kuò)張,學(xué)生人數(shù)的增加,對(duì)于學(xué)生的信息管理也越來(lái)越復(fù)雜,要求也越來(lái)越

5、高,因此需要一個(gè)全面、詳細(xì)的信息管理系統(tǒng),以便完成對(duì)學(xué)生信息的管理。無(wú)紙化的環(huán)境是技術(shù)時(shí)代的一個(gè)夢(mèng)想,也是許多學(xué)校和公司越來(lái)越意識(shí)到的一個(gè)真實(shí)世界。以前是由學(xué)生檔案和公告欄來(lái)提供各種信息及通告新的變化,而現(xiàn)在這個(gè)繁雜的工作已被網(wǎng)站和內(nèi)部計(jì)算機(jī)網(wǎng)絡(luò)所取代。使得學(xué)生信息的管理更方便、安全。根據(jù)調(diào)查得知,現(xiàn)在廣大學(xué)生進(jìn)行信息提交的主要方式是基于文件、表格等紙介質(zhì)的手工處理,學(xué)生信息管理部門信息處理工作量大,容易出錯(cuò),且管理方面因人而異。然而學(xué)校網(wǎng)上學(xué)生信息管理系統(tǒng)應(yīng)該覆蓋各個(gè)所需功能,使各級(jí)管理人員和廣大教職工在信息系統(tǒng)的輔助下進(jìn)行工作,提高管理的整體水平。使得學(xué)生信息管理更方便。學(xué)生信息管理系統(tǒng),

6、可以用集中的數(shù)據(jù)庫(kù)將與人力資源管理相關(guān)的信息全面、有機(jī)地聯(lián)系起來(lái),有效地減少了信息更新和查找中的重復(fù)勞動(dòng),保證了信息的相容性,從而大大地提高了工作效率,還能使原來(lái)不可能提供的分析報(bào)告成了可能。在采用和實(shí)施學(xué)生信息管理系統(tǒng)之后,就會(huì)將依賴于人的過(guò)程改為依賴于計(jì)算機(jī)系統(tǒng)的過(guò)程。學(xué)校管理人員只要獲取了相應(yīng)的權(quán)限,就可以隨時(shí)進(jìn)入系統(tǒng),直接查閱相應(yīng)的信息。采用和實(shí)施學(xué)生信息管理系統(tǒng)不僅僅是為了提高工作效率。為了除掉手工記錄的低效率工作方式,運(yùn)用信息化管理,提高工作效率,開(kāi)發(fā)本系統(tǒng)。2 開(kāi)發(fā)系統(tǒng)的工具,技術(shù),開(kāi)發(fā)環(huán)境的選擇Eclipse,SQL Server 20122.1EclipseEclipse 是

7、一個(gè)開(kāi)放源代碼的、基于Java的可擴(kuò)展開(kāi)發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括Java開(kāi)發(fā)工具(Java Development Kit,JDK)。雖然大多數(shù)用戶很樂(lè)于將 Eclipse 當(dāng)作 Java集成開(kāi)發(fā)環(huán)境(IDE)來(lái)使用,但 Eclipse 的目標(biāo)卻不僅限于此。Eclipse 還包括插件開(kāi)發(fā)環(huán)境(Plug-in Development Environment,PDE),這個(gè)組件主要針對(duì)希望擴(kuò)展 Eclipse 的軟件開(kāi)發(fā)人員,因?yàn)樗试S他們構(gòu)建與 Eclipse 環(huán)境無(wú)縫集成的工具。由于 E

8、clipse 中的每樣?xùn)|西都是插件,對(duì)于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開(kāi)發(fā)環(huán)境而言,所有工具開(kāi)發(fā)人員都具有同等的發(fā)揮場(chǎng)所。這種平等和一致性并不僅限于 Java開(kāi)發(fā)工具。盡管 Eclipse 是使用Java語(yǔ)言開(kāi)發(fā)的,但它的用途并不限于 Java 語(yǔ)言;例如,支持諸如C/C+、COBOL、PHP、Android等編程語(yǔ)言的插件已經(jīng)可用,或預(yù)計(jì)將會(huì)推出。Eclipse 框架還可用來(lái)作為與軟件開(kāi)發(fā)無(wú)關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容管理系統(tǒng)。基于 Eclipse 的應(yīng)用程序的一個(gè)突出例子是 IBM Rational Software Architect,它構(gòu)成了 IB

9、M Java 開(kāi)發(fā)工具系列的基礎(chǔ)。2.2 SQL Server 2012作為新一代的數(shù)據(jù)平臺(tái)產(chǎn)品,SQL Server 2012 不僅延續(xù)現(xiàn)有數(shù)據(jù)平臺(tái)的強(qiáng)大能力,全面支持云技術(shù)與平臺(tái),并且能夠快速構(gòu)建相應(yīng)的解決方案實(shí)現(xiàn)私有云與公有云之間數(shù)據(jù)的擴(kuò)展與應(yīng)用的遷移。SQL Server 2012 提供對(duì)企業(yè)基礎(chǔ)架構(gòu)最高級(jí)別的支持專門針對(duì)關(guān)鍵業(yè)務(wù)應(yīng)用的多種功能與解決方案可以提供最高級(jí)別的可用性及性能。在業(yè)界領(lǐng)先的商業(yè)智能領(lǐng)域,SQL Server 2012 提供了更多更全面的功能以滿足不同人群對(duì)數(shù)據(jù)以及信息的需求,包括支持來(lái)自于不同網(wǎng)絡(luò)環(huán)境的數(shù)據(jù)的交互,全面的自助分析等創(chuàng)新功能。針對(duì)大數(shù)據(jù)以及數(shù)據(jù)倉(cāng)庫(kù)

10、,SQL Server 2012 提供從數(shù) TB 到數(shù)百 TB 全面端到端的解決方案。作為微軟的信息平臺(tái)解決方案,SQL Server 2012 的發(fā)布,可以幫助數(shù)以千計(jì)的企業(yè)用戶突破性地快速實(shí)現(xiàn)各種數(shù)據(jù)體驗(yàn),完全釋放對(duì)企業(yè)的洞察力。SQL Server 2012包含企業(yè)版(Enterprise)、標(biāo)準(zhǔn)版(Standard),另外新增了商業(yè)智能版(Business Intelligence)。微軟表示,SQL Server 2012發(fā)布時(shí)還將包括Web版、開(kāi)發(fā)者版本以及精簡(jiǎn)版。2.3簡(jiǎn)單介紹本系統(tǒng)實(shí)現(xiàn)內(nèi)容該學(xué)生成績(jī)管理系統(tǒng),實(shí)現(xiàn)簡(jiǎn)單的用戶信息修改、數(shù)據(jù)管理,數(shù)據(jù)查詢等操作,并能實(shí)現(xiàn)簡(jiǎn)單的數(shù)據(jù)統(tǒng)

11、計(jì)。(1)用戶密碼登錄:在登錄程序之前會(huì)先彈出一個(gè)登錄對(duì)話框,在正確的輸入了數(shù)據(jù)庫(kù)中存儲(chǔ)的用戶和密碼后才能登錄程序。(2)用戶信息的修改操作員在成功登錄了程序之后可以根據(jù)用戶的需要修改信息。(3)數(shù)據(jù)管理 數(shù)據(jù)修改:前選中要修改的數(shù)據(jù)信息,然后進(jìn)行修改。 信息添加:新開(kāi)課程或有新生信息錄入時(shí),可完成數(shù)據(jù)錄入并保存在數(shù)據(jù)庫(kù)中。 數(shù)據(jù)刪除:前選中要?jiǎng)h除的數(shù)據(jù)信息,然后直接刪除。(4)數(shù)據(jù)查詢 按條件查詢,結(jié)果顯示在表中。(5)數(shù)據(jù)統(tǒng)計(jì) 按條件統(tǒng)計(jì),結(jié)果顯示在表中。3 可行性設(shè)計(jì)3.1社會(huì)可行性在學(xué)生成績(jī)的管理上,較為落后的人工檔案管理系統(tǒng),使用上的不便與維護(hù)上的開(kāi)銷日益凸顯。手工錄入、修改成績(jī),教

12、師耗時(shí)耗力,工作繁瑣,壓力沉重,準(zhǔn)確性還非常沒(méi)有保證,學(xué)生查詢成績(jī),排隊(duì)、辦手續(xù)、找檔案,相當(dāng)?shù)馁M(fèi)時(shí)間且不方便,這樣一個(gè)臃腫的管理系統(tǒng)不但耗費(fèi)了大量的人力、物力、財(cái)力資源,管理的效率也是愈來(lái)愈低下本系統(tǒng)的開(kāi)發(fā)目的就是將計(jì)算機(jī)信息科學(xué)與軟件工程等高新技術(shù)融入管理工作當(dāng)中,將管理的效率大幅提高,而維護(hù)的開(kāi)銷大幅減少,同時(shí),使教師與學(xué)生在對(duì)成績(jī)系統(tǒng)的錄入、修改、查詢等使用上得到極大的便利。3.2技術(shù)可行性 MySQL是一種開(kāi)源數(shù)據(jù)庫(kù),不僅可以降低學(xué)校的開(kāi)發(fā)成本,還可以避免版權(quán)的問(wèn)題。MySQL可以滿足各類高校的數(shù)據(jù)要求。另外,因?yàn)楸鞠到y(tǒng)是采用Java的開(kāi)源框架Hibernate作為開(kāi)發(fā)的中間件,數(shù)據(jù)

13、庫(kù)方面不會(huì)僅僅局限于MySQL,還可以輕松的轉(zhuǎn)化為其他數(shù)據(jù)庫(kù),如Oracle等,只需修改數(shù)據(jù)庫(kù)連接池的很少量配置即可。3.3 經(jīng)濟(jì)可行性采用傳統(tǒng)的手工錄入方法,不僅工作繁瑣而且需投入大量人力,很容易產(chǎn)生錯(cuò)誤,甚至造成數(shù)據(jù)的不一致,從而產(chǎn)生了成本高,效果差的弊病,對(duì)于人數(shù)眾多的高校學(xué)生管理而言是十分困難和麻煩的。而采用此系統(tǒng),所需投入的成本和精力都遠(yuǎn)遠(yuǎn)低于手工。十分實(shí)用并且很方便,容易更新。各類信息數(shù)據(jù)只需一個(gè)進(jìn)行統(tǒng)一管理即可,所以此系統(tǒng)在經(jīng)濟(jì)上也是可行的。3.4 操作可行性本系統(tǒng)的界面層次分明,一目了然,加上設(shè)計(jì)方面加入了人性化設(shè)計(jì),管理此系統(tǒng)并不難,易學(xué)易會(huì)3.5設(shè)計(jì)原則(1)安全性、可靠性

14、、容錯(cuò)性安全可靠是一個(gè)應(yīng)用系統(tǒng)的靈魂,一個(gè)極小的差錯(cuò),可能會(huì)造成整個(gè)系統(tǒng)的癱瘓,甚至可能造成學(xué)校的信息泄露。因此系統(tǒng)設(shè)計(jì)必需把安全性、可靠性、容錯(cuò)性放在首位。 (2)開(kāi)放性、標(biāo)準(zhǔn)化從發(fā)展的眼光看,一個(gè)綜合的計(jì)算機(jī)管理系統(tǒng)要實(shí)現(xiàn)校園、管理、查詢、統(tǒng)計(jì)等各環(huán)節(jié)的信息共享,完成教職工信息錄入查詢和學(xué)生數(shù)據(jù)查詢的數(shù)據(jù)交流。建立一個(gè)由開(kāi)放式,標(biāo)準(zhǔn)化的異構(gòu)式網(wǎng)絡(luò)系統(tǒng),開(kāi)放式標(biāo)準(zhǔn)化的異構(gòu)式數(shù)據(jù)庫(kù)組成的平臺(tái)來(lái)滿足當(dāng)前的需求,同時(shí)又能適應(yīng)今后新技術(shù)的引進(jìn)、開(kāi)發(fā)和推廣。(3)實(shí)用、靈活、易于擴(kuò)展系統(tǒng)設(shè)計(jì)盡量簡(jiǎn)單,靈活易于管理,有利于將來(lái)需要時(shí)進(jìn)行功能改進(jìn)和新技術(shù)引入。(4)先進(jìn)性、成熟性我們所處的時(shí)代是信息時(shí)代,

15、通信和計(jì)算機(jī)技術(shù)的發(fā)展日新月異。因而,應(yīng)用系統(tǒng)的建設(shè)不僅應(yīng)適應(yīng)新技術(shù)發(fā)展方向,保證其先進(jìn)性,同時(shí)兼顧成熟的計(jì)算機(jī)技術(shù)、保證系統(tǒng)的可靠。4 需求分析4.1 開(kāi)發(fā)目的學(xué)生成績(jī)管理系統(tǒng)是應(yīng)對(duì)學(xué)生人數(shù)增多、信息量增大的問(wèn)題,實(shí)現(xiàn)管理的現(xiàn)代化、網(wǎng)絡(luò)化,逐步擺脫當(dāng)前學(xué)生成績(jī)管理的人工管理方式,提高成績(jī)管理效率而開(kāi)發(fā)的。希望該開(kāi)發(fā)程序能夠解決學(xué)生信息存儲(chǔ)、學(xué)生成績(jī)查詢、錄入還有課程查詢等一系列功能,并提供了對(duì)各功能模塊的查詢和更新功能,且這兩種功能基本上是通過(guò)存儲(chǔ)過(guò)程來(lái)實(shí)現(xiàn)的,其中學(xué)生成績(jī)查詢和學(xué)生信息查詢是系統(tǒng)開(kāi)發(fā)的重點(diǎn)。4.2 功能需求(1)教職工:信息要求:對(duì)學(xué)生成績(jī)的了解,對(duì)學(xué)生成績(jī)會(huì)有一個(gè)成體的了

16、解,在今后的課程教學(xué)中可以對(duì)自己進(jìn)行改進(jìn)。同時(shí)還可以對(duì)教授的課程進(jìn)行修改和重設(shè)。還可以進(jìn)一步了解學(xué)生的信息,加深對(duì)學(xué)生的了解,便于因材施教。處理要求:當(dāng)學(xué)生基本信息發(fā)生變化時(shí),老師能對(duì)其進(jìn)行修改。比如某些同學(xué)中有轉(zhuǎn)校、后轉(zhuǎn)來(lái)該系或轉(zhuǎn)到其他系中,老師要能根據(jù)事實(shí)情況進(jìn)行更新。需要有的操作是修改、刪除、增加。能夠管理課程信息。如老師進(jìn)行排課的時(shí)候能夠有序的安排,不會(huì)出現(xiàn)錯(cuò)排或重復(fù)等一系列狀況。能夠進(jìn)行課程名、課時(shí)、學(xué)分的修改、刪除和增添。對(duì)成績(jī)的管理,能夠進(jìn)行成績(jī)的錄入、修改、刪除,能夠清晰的了解學(xué)生的成績(jī)和大體情況,以便做出相應(yīng)的總結(jié)和改進(jìn)。安全性與完整性要求:系統(tǒng)應(yīng)設(shè)置訪問(wèn)用戶的標(biāo)識(shí)以鑒別是否

17、是合法用戶,并要求合法用戶設(shè)置其密碼,保證用戶身份不被盜用;系統(tǒng)應(yīng)對(duì)不同的數(shù)據(jù)設(shè)置不同的訪問(wèn)級(jí)別,限制訪問(wèn)用戶可查詢和處理數(shù)據(jù)的類別和內(nèi)容;系統(tǒng)應(yīng)對(duì)不同用戶設(shè)置不同的權(quán)限,區(qū)分不同的用戶,如區(qū)分普通用戶(學(xué)生),教職工。各種信息記錄的完整性,信息記錄內(nèi)容不能為空;各種數(shù)據(jù)間相互的聯(lián)系的正確性;相同的數(shù)據(jù)在不同記錄中的一致性。(2)學(xué)生:信息要求:能夠查詢自己的成績(jī)信息和大家的整體成績(jī)好做出對(duì)自己的新的定位,同時(shí)還有更改自己的學(xué)生信息,還有就是查詢新的課程信息。處理要求:當(dāng)學(xué)生發(fā)現(xiàn)自己信息出現(xiàn)錯(cuò)誤時(shí),可以根據(jù)自己的實(shí)際情況來(lái)進(jìn)行更改,比如某同學(xué)發(fā)現(xiàn)自己的年齡存儲(chǔ)出現(xiàn)了錯(cuò)誤就需要相應(yīng)的機(jī)制進(jìn)行修改

18、、刪除等。同時(shí)還可進(jìn)入成績(jī)查詢系統(tǒng)。在該界面中同學(xué)可以查詢自己的成績(jī),還可以查詢整個(gè)科目的全部成績(jī)。4.3 數(shù)據(jù)需求學(xué)生成績(jī)管理系統(tǒng)就是對(duì)學(xué)生成績(jī)信息的管理,所以首先我們需要知道的是學(xué)生有那些信息,并且是怎樣進(jìn)行分類的。 學(xué)生信息包含:學(xué)生基本信息、課程基本信息、成績(jī)信息。學(xué)生基本信息根據(jù)要求應(yīng)該包括學(xué)生對(duì)應(yīng)的學(xué)號(hào),姓名,性別,所在班級(jí)等;課程基本信息應(yīng)該包課程號(hào),課程名,課時(shí),學(xué)分等;成績(jī)表包含課程號(hào),學(xué)號(hào),成績(jī)等。與學(xué)生唯一一一對(duì)應(yīng)的是學(xué)號(hào),所以學(xué)號(hào)是唯一的主鍵,其他的都不能是,根據(jù)學(xué)號(hào)我們可以查找學(xué)生的基本信息,還有學(xué)生姓名等有關(guān)信息;根據(jù)課程號(hào)可以知道學(xué)生對(duì)應(yīng)的成績(jī)等。與課程一一對(duì)應(yīng)的

19、是課程號(hào),所以課程號(hào)是唯一主碼,其他的都不是,根據(jù)課程號(hào)我們可以查詢課程的基本信息,如課程名、對(duì)應(yīng)的課時(shí)和對(duì)應(yīng)的學(xué)分等。與成績(jī)對(duì)應(yīng)的有兩個(gè)主碼,一個(gè)是課程號(hào)還有一個(gè)是學(xué)號(hào)。只有這兩個(gè)同時(shí)確定了之后才能確定一個(gè)準(zhǔn)確的成績(jī)。在用戶表中可以根據(jù)用戶需要進(jìn)行密碼的修改等一系列操作。綜合分析對(duì)信息管理系統(tǒng)分五個(gè)表:用戶登錄表(用戶名,用戶密碼,用戶權(quán)限)學(xué)生信息表(學(xué)號(hào),姓名,性別,所在班級(jí))課程表(課程號(hào),課程名,實(shí)驗(yàn)學(xué)時(shí),講課學(xué)時(shí),學(xué)分)成績(jī)表(課程號(hào),學(xué)號(hào),成績(jī))班級(jí)信息表(班級(jí)名,班級(jí)人數(shù))4.4數(shù)據(jù)流圖(1)功能流圖該數(shù)據(jù)流圖主要體現(xiàn)教職工對(duì)學(xué)生信息、課程信息和學(xué)生成績(jī)的管理,然后存儲(chǔ)的信息作

20、用于查詢系統(tǒng)。在學(xué)生能夠操作的只有成績(jī)查詢。(如圖1所示)教職工錄入學(xué)生信息學(xué)生錄入課程信息課程錄入學(xué)生成績(jī)成績(jī)查詢學(xué)生成績(jī)學(xué)生圖4.41.功能流圖(2)登錄流圖(如圖2所示)用戶信息身份驗(yàn)證密碼修改用戶圖4.42登錄流圖5 數(shù)據(jù)庫(kù)關(guān)系設(shè)計(jì)5.1表格設(shè)計(jì)(1) 學(xué)生信息數(shù)據(jù)字典學(xué)生信息數(shù)據(jù)表字段名字段類型約束控制學(xué)號(hào)nchar(10)主鍵(primary key)姓名nchar(10)notnull性別nchar(2)notnull所在班級(jí)nchar(10)notnull(2) 班級(jí)信息表班級(jí)信息表字段名字段類型約束控制班級(jí)名nchar(10)主鍵(primary key)人數(shù)intnotnu

21、ll(3) 成績(jī)表成績(jī)表字段名字段類型約束控制學(xué)號(hào)nchar(10)主鍵(primary key)課程號(hào)nchar(10)主鍵(primary key)成績(jī)nchar(10)notnull(4) 課程表課程表字段名字段類型約束控制課程號(hào)nchar(10)主鍵(primary key)課程名nchar(10)notnull實(shí)驗(yàn)學(xué)時(shí)intnotnull講課學(xué)時(shí)intnotnull學(xué)分intnotnull(5) 用戶登錄表用戶登錄字段名字段類型約束控制學(xué)號(hào)nchar(10)主鍵(primary key)密碼nchar(10)主鍵(primary key)權(quán)限Intnotnull5.2 系統(tǒng)設(shè)計(jì)學(xué)生成

22、績(jī)管理系統(tǒng)系統(tǒng)管理信息管理查詢統(tǒng)計(jì)用戶信息管理系統(tǒng)說(shuō)明課程信息管理學(xué)生信息管理成績(jī)信息管理學(xué)生信息查詢課程信息查詢成績(jī)信息查詢學(xué)生統(tǒng)計(jì)課程統(tǒng)計(jì)圖5.2系統(tǒng)設(shè)計(jì)5.3全局ER圖 學(xué)生學(xué)號(hào)姓名年級(jí)班級(jí)教師教師號(hào)教師姓名任課課程管理?yè)碛姓n程編號(hào)成績(jī)課程名稱教師號(hào)成績(jī)學(xué)期添加修改刪除管理學(xué)習(xí)擁有添加刪除修改圖5.3全局E-R圖6 學(xué)生成績(jī)管理系統(tǒng)功能測(cè)試 6.1功能測(cè)試(1)登錄界面測(cè)試圖6.11登錄界面圖6.12密碼有誤圖6.13登錄成功運(yùn)行程序,登錄界面(如圖6.11),輸入用戶名、密碼,若輸入密碼正確顯示(如圖6.13),否則顯示錯(cuò)誤(如圖6.12)。(2)查詢界面測(cè)試圖6.14主界面圖6.15

23、查詢功能登錄成功后,顯示界面(如圖6.14),輸入學(xué)號(hào),點(diǎn)擊查詢,顯示界面(如圖6.15)。(3)添加界面測(cè)試圖6.16添加功能圖6.17添加成功輸入需要輸入的學(xué)生學(xué)號(hào)、姓名、成績(jī)等(如圖6.16),若添加成功則顯示(如圖6.17)。圖6.18刪除成功輸入需要?jiǎng)h除的學(xué)生學(xué)號(hào),若刪除成功則顯示(如圖6.18)。6.2測(cè)試總結(jié)通過(guò)軟件測(cè)試,可看到對(duì)數(shù)據(jù)的管理、查詢、統(tǒng)計(jì)等功能均可實(shí)現(xiàn)。登錄界面用戶名與密碼的組合一定程度上保證了數(shù)據(jù)庫(kù)的安全性。本系統(tǒng)達(dá)到了最初設(shè)計(jì)的目的。7 結(jié)論7.1系統(tǒng)優(yōu)缺點(diǎn)分析(1)優(yōu)點(diǎn)本系統(tǒng)在對(duì)數(shù)據(jù)的管理及查詢上,界面美觀,操作簡(jiǎn)單易懂。(2)不足之處在對(duì)用戶權(quán)限的設(shè)計(jì),該程

24、序在對(duì)用戶權(quán)限的設(shè)計(jì)比較混亂,不能夠清晰的分出教職工和學(xué)生的使用權(quán)限,這會(huì)使程序的可用性和安全性出現(xiàn)很大的問(wèn)題。在這個(gè)方面,還有很多工作需要做,比如對(duì)登錄用戶在數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程中要增加權(quán)限的設(shè)計(jì),使的在登錄后能夠根據(jù)權(quán)限來(lái)進(jìn)行相應(yīng)的操作,不會(huì)是用戶越級(jí)等。7.2經(jīng)驗(yàn)總結(jié) 經(jīng)過(guò)兩周的課程設(shè)計(jì),加強(qiáng)了我關(guān)于理論聯(lián)系實(shí)際、與具體課題項(xiàng)目結(jié)合開(kāi)發(fā)、設(shè)計(jì)系統(tǒng)的能力。既讓我們了解到應(yīng)該怎樣把理論運(yùn)用于實(shí)際,又讓我了解到在實(shí)踐中遇到問(wèn)題時(shí)要怎樣運(yùn)用所學(xué)知識(shí)理論去解決。在本次課程設(shè)計(jì)中,還需要一些以前沒(méi)有學(xué)習(xí)到的知識(shí),于是書籍跟網(wǎng)絡(luò)成了我的良好助手。具體來(lái)說(shuō),在進(jìn)行查詢?cè)O(shè)計(jì)時(shí),開(kāi)始我無(wú)法將結(jié)果以表格的形式展示

25、,報(bào)表的設(shè)計(jì)也存在問(wèn)題,在網(wǎng)上查閱資料和與同學(xué)討論學(xué)習(xí)后,將問(wèn)題解決了。在查閱資料的過(guò)程中,要判斷優(yōu)劣、取舍相關(guān)知識(shí),這樣一來(lái)我們對(duì)搜索來(lái)的信息的利用能力也有所提高。學(xué)習(xí)的知識(shí)是有限的,在以后的工作中肯定會(huì)遇到許多求知的領(lǐng)域,這方面的能力將有助于我未來(lái)的工作。在開(kāi)始編寫程序的時(shí)候,看到別人的軟件功能非常的詳細(xì),而且界面非常的漂亮,總希望自己的軟件也非常的完善,但是,經(jīng)過(guò)二個(gè)月的學(xué)習(xí),發(fā)現(xiàn)編一個(gè)優(yōu)秀的軟件決不是一蹴而就的事情,需要長(zhǎng)時(shí)間的積累和經(jīng)驗(yàn)。由于我們的知識(shí)有限,經(jīng)驗(yàn)不足及閱歷不足,因此,在該系統(tǒng)的設(shè)計(jì)方面還有很多不足,比如功能過(guò)少,界面不夠完美等問(wèn)題,我們會(huì)在工作的使用過(guò)程中,根據(jù)工作的

26、具體要求不斷的改進(jìn),完善,爭(zhēng)取使該系統(tǒng)慢慢趨向完美。附錄1.登錄界面程序段package 啊;import java.awt.event.*;import javax.swing.*;public class dljm extends JFrame implements ActionListenerprivate JFrame jfrm=new JFrame(登錄界面);private JLabel lab1=new JLabel(用戶名);private JLabel lab2=new JLabel(密碼);private JTextField jft=new JTextField();pr

27、ivate JPasswordField jpf=new JPasswordField(); private JButton btn=new JButton(登錄); dljm() this.setLayout(null);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setBounds(400, 200, 600, 400);lab1.setBounds(50, 30, 70, 50);lab2.setBounds(50, 80, 70, 50);this.add(lab1);this.add(lab2);jft.setBo

28、unds(120, 30,200, 50);jpf.setBounds(120, 80, 200,50);this.add(jft);this.add(jpf);btn.setBounds(130, 140, 100, 50);this.add(btn);btn.addActionListener(this); public void actionPerformed(ActionEvent arg0) if(jft.getText().equals(gxl)&String.valueOf(jpf.getPassword().equals(1)JOptionPane.showMessageDia

29、log(null, 成功, , JOptionPane.INFORMATION_MESSAGE);dierge frm1=new dierge();frm1.setVisible(true); else JOptionPane.showMessageDialog(null, 錯(cuò)誤, , JOptionPane.ERROR_MESSAGE); public static void main(String args) dljm frm=new dljm();frm.setVisible(true);2.插入程序段package 啊;import java.awt.Container;import

30、java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;import java.sql.Statement;import javax.swing.*;class charu extends JFrame implements ActionListenerString url=jdbc:s

31、qlserver:/localhost:1433; DatabaseName=cj;String driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;Statement st;Connection con;private JButton JB=new JButton(確定);private JLabel J0=new JLabel(學(xué)號(hào));private JLabel J1=new JLabel(姓名); private JLabel J2=new JLabel(數(shù)學(xué)); private JLabel J3=new JLabel(英語(yǔ)); p

32、rivate JLabel J4=new JLabel(語(yǔ)文); private JTextField JT0=new JTextField(); private JTextField JT1=new JTextField(); private JTextField JT2=new JTextField(); private JTextField JT3=new JTextField(); private JTextField JT4=new JTextField(); public charu()this.setLayout(null); this.setBounds(500, 200, 4

33、00, 250); J0.setBounds(80, 20, 80, 20); J1.setBounds(80, 50, 80, 20); J2.setBounds(80, 80, 80, 20); J3.setBounds(80, 110, 80, 20); J4.setBounds(80, 140, 80, 20); this.add(J0); this.add(J1); this.add(J2); this.add(J3); this.add(J4); JT0.setBounds(150, 20, 80, 20); JT1.setBounds(150, 50, 80, 20); JT2.

34、setBounds(150, 80, 80, 20); JT3.setBounds(150, 110, 80, 20); JT4.setBounds(150, 140, 80, 20); this.add(JT0); this.add(JT1); this.add(JT2); this.add(JT3); this.add(JT4); JB.setBounds(250, 90, 80, 20); this.add(JB); JB.addActionListener(this); public void actionPerformed(ActionEvent arg0) String x=JT0

35、.getText();String xx=JT1.getText();String s=JT2.getText();String y1=JT3.getText();String y=JT4.getText();tryClass.forName(driver);catch (ClassNotFoundException e)tryClass.forName(driver);catch(ClassNotFoundException event)trycon=DriverManager.getConnection(url,sa,123);con.setAutoCommit(true);String

36、sq=INSERT INTO b1(xh,xm,sx,yy,yw)VALUES(?,?,?,?,?); PreparedStatement ps = con.prepareStatement(sq); ps.setString(1, x); ps.setString(2, xx); ps.setString(3, s); ps.setString(4, y1); ps.setString(5, y); int t = ps.executeUpdate();if (t 0) JOptionPane.showMessageDialog(null, 添加成功, 提示, JOptionPane.INF

37、ORMATION_MESSAGE); else JOptionPane.showMessageDialog(null, 添加失敗, 提示, JOptionPane.ERROR_MESSAGE); ps.close(); con.close(); catch(SQLException e1) System.out.println(異常+e1);3.刪除程序段package 啊;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connec

38、tion;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.Scanner;import javax.swing.*;public class dierge extends JFrame implements ActionListenerString url=jdbc:sqlserver:/localhost:1433; D

39、atabaseName=cj;String driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;Statement st=null;Connection con=null;private JFrame jfrm=new JFrame(學(xué)生成績(jī)管理系統(tǒng));private JLabel lab1=new JLabel(學(xué)號(hào));private JLabel lab=new JLabel(語(yǔ)文);private JLabel lab2=new JLabel(姓名);private JLabel lab3=new JLabel(數(shù)學(xué));private

40、JLabel lab4=new JLabel(英語(yǔ));private JButton btn1=new JButton(查詢);private JButton btn2=new JButton(刪除);private JButton btn3=new JButton(添加);private JTextField jft1=new JTextField();private JTextField jft2=new JTextField();private JTextField jft3=new JTextField();private JTextField jft4=new JTextField(

41、);private JTextField jft5=new JTextField();private JTextField jft6=new JTextField(); dierge() ImageIcon img = new ImageIcon(d:/2.jpg); JLabel imgLabel = new JLabel(img); this.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE); imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight()

42、;/設(shè)置背景標(biāo)簽的位置 Container cp=this.getContentPane(); cp.setLayout(null); (JPanel)cp).setOpaque(false); this.setLayout(null);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setBounds(200, 200, 400, 300); lab1.setBounds(80, 20, 60, 20); lab2.setBounds(80, 50, 60, 20); lab3.setBounds(80, 80, 60, 2

43、0); lab4.setBounds(80, 110, 60, 20); lab.setBounds(80, 140, 60, 20); this.add(lab1);this.add(lab2);this.add(lab3);this.add(lab4);this.add(lab);jft1.setBounds(150, 20,60, 20);jft2.setBounds(150, 50,60, 20);jft3.setBounds(150, 80,60, 20);jft4.setBounds(150, 110,60, 20);jft5.setBounds(30, 220, 60, 20);

44、jft6.setBounds(150, 140,60,20);this.add(jft1);this.add(jft2);this.add(jft3);this.add(jft4);this.add(jft6);this.add(jft5);btn1.setBounds(300, 150, 70, 20);btn2.setBounds(100, 220, 70, 20);btn3.setBounds(300, 190, 70, 20);this.add(btn1);this.add(btn2);this.add(btn3);btn1.addActionListener(this);btn2.addActionListener(new ActionListener() public void actionPerformed(ActionEven

溫馨提示

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

評(píng)論

0/150

提交評(píng)論