版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件工程導(dǎo)論課程設(shè)計(jì)-學(xué)生學(xué)籍管理系統(tǒng)安徽課程設(shè)計(jì)報(bào)告課題班專(zhuān)姓學(xué)程:軟件工程導(dǎo)論目:級(jí):業(yè):計(jì)算機(jī)科學(xué)與技術(shù)名:號(hào):指導(dǎo)教師:日期:2014.05.05摘要隨著信息技術(shù)在管理上越來(lái)越深入而廣泛的應(yīng)用,管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,任何一個(gè)單位要生存要發(fā)展,要高效率地把內(nèi)部活動(dòng)有機(jī)地組織起來(lái),就必須建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng)。本系統(tǒng)是在管理信息系統(tǒng)的理論和方法指導(dǎo)下、數(shù)據(jù)庫(kù)技術(shù)支持下完成的。本文在結(jié)構(gòu)上首先論述了程序設(shè)計(jì)目的和意義,然后敘述了開(kāi)發(fā)環(huán)境、開(kāi)發(fā)平臺(tái)以及數(shù)據(jù)庫(kù)技術(shù),接著用圖片、說(shuō)明和代碼的方式介紹了系統(tǒng)的整體規(guī)劃,接下來(lái)是系統(tǒng)在具
2、體實(shí)現(xiàn)中的詳細(xì)內(nèi)容,最終本系統(tǒng)能夠完成信息的添加、修改、刪除、查詢(xún)等功能,本系統(tǒng)界面友好,操作簡(jiǎn)單,比較實(shí)用,思路縝密?chē)?yán)謹(jǐn),管理起來(lái)方便快捷,能有效的達(dá)到學(xué)生信息的管理的目的。關(guān)鍵詞:MicrosoftVisualC#2008ExpressEdition,SQLserver2005,界面,權(quán)限3目錄摘要2目錄31緒論41.1設(shè)計(jì)目的51.2開(kāi)發(fā)工具選擇51.3開(kāi)發(fā)環(huán)境51.4本報(bào)告的主要內(nèi)4容62需求分析921系統(tǒng)任務(wù)描述92.1.1系統(tǒng)目標(biāo)62.1.2系統(tǒng)設(shè)計(jì)與功能分析72.1.3性能需求分析72.1.4開(kāi)發(fā)環(huán)境和軟件722系統(tǒng)概要設(shè)計(jì)102.2.1數(shù)據(jù)需求7數(shù)據(jù)字典7數(shù)據(jù)流圖82.2.2功
3、能需求1023系統(tǒng)詳細(xì)設(shè)計(jì)102.3.1概念結(jié)構(gòu)設(shè)計(jì)102.3.2邏輯結(jié)構(gòu)設(shè)計(jì)122.3.3物理結(jié)構(gòu)設(shè)計(jì)錯(cuò)誤!未定義書(shū)簽。2.3.4系統(tǒng)功能設(shè)計(jì)錯(cuò)誤!未定義書(shū)簽。3總體設(shè)計(jì)153.1設(shè)計(jì)概述153.2系統(tǒng)總體結(jié)構(gòu)及功能模塊劃分153.2.1學(xué)生信息查詢(xún)模塊153.2.2學(xué)生信息管理模塊163.4安全保密設(shè)計(jì)163.4.1用戶(hù)登錄安全性174詳細(xì)設(shè)計(jì)5174.1概述174.2系統(tǒng)程序流程圖184.3系統(tǒng)主要功能模塊簡(jiǎn)介184.3.1系統(tǒng)登錄184.3.2學(xué)生信息查詢(xún)模塊184.3.3學(xué)生信息管理模塊194.3.4管理員信息管理模塊204.3.5教師信息管理模塊215系統(tǒng)測(cè)試及難點(diǎn)分析235.1公
4、共類(lèi)代碼設(shè)計(jì)235.2登錄界面代碼設(shè)計(jì)265.3查詢(xún)模塊代碼設(shè)計(jì)3975.4添加模塊代碼設(shè)計(jì)285.5更新模塊代碼設(shè)計(jì)295.6刪除模塊代碼設(shè)計(jì)32結(jié)論錯(cuò)誤!未定義書(shū)簽。2參考文獻(xiàn)3361緒論人類(lèi)有幾千年的歷史,計(jì)算機(jī)從產(chǎn)生到現(xiàn)在只不過(guò)50多年,而網(wǎng)絡(luò)的迅速發(fā)展也不過(guò)10年的時(shí)間。但是,計(jì)算機(jī)和網(wǎng)絡(luò)對(duì)社會(huì)的影響已經(jīng)迅速擴(kuò)大,甚至在改變?nèi)藗兊纳?。特別是90年代以來(lái),多媒體和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展正在以驚人的速度改變著人們的工作方式、交往方式和生活方式。正像著名的未來(lái)學(xué)家尼葛洛龐帝(1997)所說(shuō)的:“數(shù)字不再只和計(jì)算有關(guān),它決定我們的生存?!笨茖W(xué)技術(shù)是第一生產(chǎn)力,是最先進(jìn)的生產(chǎn)力?,F(xiàn)在,已經(jīng)沒(méi)有人
5、懷疑信息技術(shù)的發(fā)展將會(huì)引起人類(lèi)社會(huì)全面和深刻的變革,使人類(lèi)社會(huì)由工業(yè)社會(huì)邁向信息社會(huì)。目前,在社會(huì)各個(gè)方面都呈現(xiàn)出了與工業(yè)社會(huì)顯著不同的特點(diǎn)。網(wǎng)上書(shū)店,網(wǎng)上醫(yī)院,網(wǎng)上學(xué)校,網(wǎng)上購(gòu)物,網(wǎng)上銀行,政府上網(wǎng)等新事物如雨后春筍般涌現(xiàn)出來(lái),對(duì)人們的傳統(tǒng)生活方式、工作方式產(chǎn)生極大的沖擊。使人們感受到技術(shù)發(fā)展的脈搏和信息時(shí)代前進(jìn)的步伐。7隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息量也成倍增長(zhǎng)。面對(duì)龐大的信息量需要有學(xué)生管理系統(tǒng)來(lái)提高學(xué)生管理工作的效率。通過(guò)這樣的系統(tǒng)可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢(xún)、修改、增加、刪除等,從而減少管理方面的工作量。1.1設(shè)計(jì)目的本課程設(shè)計(jì)的目的是使學(xué)
6、生能熟練掌握簡(jiǎn)單的簡(jiǎn)單Windows窗體應(yīng)用程序的設(shè)計(jì)和ADO.net的應(yīng)用,希望通過(guò)本次課程設(shè)計(jì)鍛煉學(xué)生使用C#語(yǔ)言解決實(shí)際問(wèn)題的能力。1.2開(kāi)發(fā)工具選擇本系統(tǒng)后臺(tái)數(shù)據(jù)庫(kù)采用MicrosoftSQLServer數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)系統(tǒng)在安全性、準(zhǔn)確性和運(yùn)行速度方面有絕對(duì)的優(yōu)勢(shì),并且處理數(shù)據(jù)量大,效率高;前臺(tái)采用Microsoft公司的VisualStudio2008作為主要開(kāi)發(fā)工具,可與SQLServer2005數(shù)據(jù)庫(kù)無(wú)縫鏈接。1.3開(kāi)發(fā)環(huán)境系統(tǒng)開(kāi)發(fā)平臺(tái):MicrosoftVisualStudio2005系統(tǒng)開(kāi)發(fā)語(yǔ)言:C#數(shù)據(jù)庫(kù)管理軟件:SQLServer20051.4本報(bào)告的主要內(nèi)容本報(bào)告詳細(xì)
7、的介紹了學(xué)生信息管理系統(tǒng)的開(kāi)發(fā)過(guò)程,主要涉及到的工作如下:系統(tǒng)的需求分析、系統(tǒng)的總體設(shè)計(jì)、系統(tǒng)的概念設(shè)計(jì)、系統(tǒng)各模塊的詳細(xì)8設(shè)計(jì)、系統(tǒng)運(yùn)行與測(cè)試。2需求分析需求分析是一組活動(dòng)的總稱(chēng),作為系統(tǒng)分析員,必須協(xié)同軟件用戶(hù)共同完成。而需求分析的任務(wù)是定義待開(kāi)發(fā)的軟件的功能、性能等指標(biāo)。首先要了解用戶(hù)的相關(guān)事務(wù),如果你給一家網(wǎng)站做在線(xiàn)書(shū)店系統(tǒng),除了參考現(xiàn)在已經(jīng)存在的類(lèi)似和相關(guān)的系統(tǒng)外,你還需要通過(guò)用戶(hù)的演示、講解和有關(guān)文檔,與用戶(hù)進(jìn)行交流協(xié)商。在這個(gè)過(guò)程中,可以提出自己有建設(shè)性的想法和建議,只有這樣,用戶(hù)和系統(tǒng)設(shè)計(jì)人員才會(huì)在系統(tǒng)提供的事務(wù)上達(dá)成一致,這對(duì)于軟件來(lái)說(shuō)是相當(dāng)重要的。其次要分析用戶(hù)的事務(wù)流程,
8、前面了解的用戶(hù)事務(wù)只是一些離散的事務(wù)活動(dòng),而事務(wù)流程是一種重要的信息,比如用戶(hù)登錄這個(gè)流程,他需要經(jīng)歷用戶(hù)名和密碼的輸入,正確用戶(hù)類(lèi)型的選擇這些活動(dòng),然后將了解到的用戶(hù)活動(dòng)加以整理并按照這些活動(dòng)所固有的次序形成業(yè)務(wù)流程。還要了解用戶(hù)對(duì)軟件的期望值,除了需要能夠正確處理用戶(hù)的事務(wù)外,還需要了解用戶(hù)對(duì)系統(tǒng)的其他需求,比如系統(tǒng)的安全性。這些對(duì)于用戶(hù)而言也顯得尤為重要。最后整理出用戶(hù)需求并評(píng)審需求。21系統(tǒng)任務(wù)描述系統(tǒng)模塊的設(shè)計(jì)應(yīng)該遵循整個(gè)系統(tǒng)總體設(shè)計(jì)思路,基于C#開(kāi)發(fā)工具與數(shù)據(jù)庫(kù)SQL設(shè)計(jì),主要完成的設(shè)計(jì)如下:2.1.1系統(tǒng)目標(biāo)(1)根據(jù)查詢(xún)條件實(shí)現(xiàn)學(xué)生信息的查詢(xún)(2)學(xué)生選課信息查詢(xún)、成績(jī)信息的查
9、詢(xún)(3)學(xué)生信息、課程信息、成績(jī)信息的增加、刪除、修改(4)對(duì)基本信息完成增加、刪除、修改時(shí),需注意表與表之間的關(guān)聯(lián)2.1.2系統(tǒng)設(shè)計(jì)與功能分析學(xué)生信息管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的學(xué)生信息管理,查詢(xún),更新與維護(hù),使用方便,易用性強(qiáng),圖形界面清晰明了。該軟件用java語(yǔ)言編寫(xiě),用SQLServer2000數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)庫(kù)進(jìn)行信息的存儲(chǔ),用SQL語(yǔ)句完成學(xué)生學(xué)籍信息的添加,查詢(xún),修改,刪除的操作以及成績(jī)的錄入,修改,刪除等。用ODBC驅(qū)動(dòng)實(shí)現(xiàn)前臺(tái)Java與后臺(tái)SQL數(shù)據(jù)庫(kù)的連9接。Java語(yǔ)言跨平臺(tái)性強(qiáng),可以在windows,linux,ubuntu等系統(tǒng)下使用,方便簡(jiǎn)單,安全性好。SQLS
10、erver2000數(shù)據(jù)庫(kù)高效安全,兩者結(jié)合可相互利用各自的優(yōu)勢(shì)。該系統(tǒng)實(shí)現(xiàn)的大致功能:1用戶(hù)登陸界面。該界面可以選擇使用者的身份,“管理員,教師,學(xué)生”。不同的身份有不同的操作界面和功能權(quán)限。ID號(hào)和密碼輸入正確即可登錄。學(xué)生管理界面。提供了學(xué)生學(xué)籍信息的查詢(xún),修改登錄密碼等功能。2教師管理界面。提供了對(duì)學(xué)生學(xué)籍信息的查詢(xún),添加,修改,刪除。修改密碼等功能。3管理員管理界面。擁有最高的權(quán)限。允許添加教師信息。4登錄的用戶(hù)信息分別存儲(chǔ)在SQL數(shù)據(jù)庫(kù)的“管理員信息表”,“教師信息表”,“學(xué)生表”中,如果用戶(hù)信息不存在則三張表中,將會(huì)無(wú)權(quán)利登錄本管理系統(tǒng)。保證了本學(xué)生管理系統(tǒng)的安全性。2.1.3性能
11、需求分析(1)登錄、用戶(hù)界面需求:簡(jiǎn)潔、易懂、易用、友好的用戶(hù)界面。(2)安全保密性需求:只有憑借用戶(hù)名和密碼登陸系統(tǒng),才能進(jìn)行信息的管理等。22系統(tǒng)概要設(shè)計(jì)2.2.1數(shù)據(jù)需求:數(shù)據(jù)字典實(shí)體屬性表:實(shí)體教師管理員學(xué)生教師信息表:屬性教師ID,教師姓名,登錄密碼管理員ID,登錄密碼學(xué)號(hào),姓名,性別,班級(jí)號(hào),籍貫,登錄密碼,學(xué)生成績(jī)10字段名類(lèi)型空值約束條件教師not主鍵IDvarchanullr(8)教師姓varchnot名ar(8)null登錄密varchnot碼ar(8)null管理員信息表:字段名類(lèi)型空值約束條件管理員not主鍵IDvarchanullr(10)登錄密varchnot碼ar
12、(10)null學(xué)生表:字段類(lèi)型空值約束條件名學(xué)號(hào)intnot主鍵null姓名varchnot11ar(30null)性別char(2)班級(jí)varchnot外鍵號(hào)ar(30null)籍貫char(10)登錄moneynot密碼null學(xué)生Char成績(jī)數(shù)據(jù)流圖第一層學(xué)生籍信管學(xué)教學(xué)學(xué)生名單息成績(jī)12管理成績(jī)單統(tǒng)計(jì)學(xué)表第二層學(xué)成績(jī)1錄生學(xué)生信2查息本次考?xì)v次考3統(tǒng)4升13班平均成績(jī)升留級(jí)表各科平均成績(jī)學(xué)生信審計(jì)1.2是合格單第三層新生信息息13錄入存儲(chǔ)學(xué)生信息各科成績(jī)學(xué)生學(xué)生14第四層班級(jí)班級(jí)統(tǒng)計(jì)學(xué)生信息統(tǒng)計(jì)成績(jī)各科各科第五層是否更新學(xué)生信息升留級(jí)名單學(xué)生記錄成績(jī)152.2.2功能需求:,修改除等
13、基,刪(1)實(shí)現(xiàn)學(xué)生基本情況的錄入本操作。(2)對(duì)學(xué)生基本信息提供靈活的查詢(xún)方式。(3)完成一個(gè)班級(jí)的學(xué)期選課功能。(4)實(shí)現(xiàn)學(xué)生成績(jī)的錄入,修改,刪除等基本操作。(5)能方便的對(duì)學(xué)生的個(gè)人學(xué)期成績(jī)進(jìn)行查詢(xún)。(6)具有成績(jī)統(tǒng)計(jì),排名等功能。(7)具有留級(jí),休學(xué)等特殊情況的處理功能。(8)能輸出常用的各種報(bào)表。(9)具有數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)功能。23系統(tǒng)詳細(xì)設(shè)計(jì)2.3.1概念結(jié)構(gòu)設(shè)計(jì)局部ER圖學(xué)號(hào)姓名性別專(zhuān)業(yè)號(hào)專(zhuān)業(yè)名人數(shù)學(xué)生出生年月專(zhuān)業(yè)16院系課程號(hào)課程名學(xué)時(shí)課程整體的ER圖專(zhuān)業(yè)號(hào)專(zhuān)業(yè)名人數(shù)學(xué)號(hào)姓名性別院系專(zhuān)業(yè)號(hào)課程號(hào)學(xué)期專(zhuān)業(yè)屬于學(xué)生設(shè)置選課課程課程號(hào)課程名學(xué)時(shí)出生年月密碼課程號(hào)學(xué)號(hào)成績(jī)學(xué)期172
14、.3.2.邏輯結(jié)構(gòu)設(shè)計(jì)(1)ER圖轉(zhuǎn)換為關(guān)系模型由ER圖可見(jiàn):圖中有三個(gè)實(shí)體:學(xué)生,課程,和專(zhuān)業(yè);三個(gè)關(guān)系:學(xué)生選課關(guān)系,學(xué)生與專(zhuān)業(yè)之間的屬于關(guān)系,專(zhuān)業(yè)的課程設(shè)置。由于每個(gè)實(shí)體必須構(gòu)造表,所以可以先得到三個(gè)實(shí)體的信息表,實(shí)體的碼就是關(guān)系的碼,實(shí)體的屬性即關(guān)系模型的屬性:學(xué)生基本信息表:S(sno,sname,ssex,sbirth,spasw)課程基本信息表:C(cno,cname,cperiord)專(zhuān)業(yè)基本信息表:P(pno,pname,pnum,psdept)對(duì)應(yīng)的屬性分別為:學(xué)號(hào),姓名,性別,出生日期,登陸密碼課程編號(hào),課程名,學(xué)期專(zhuān)業(yè)編號(hào),專(zhuān)業(yè)名,專(zhuān)業(yè)人數(shù),所在院系對(duì)于多對(duì)多的關(guān)系來(lái)說(shuō)
15、,與該聯(lián)系相連的實(shí)體的碼以及本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,各實(shí)體之間的碼組成關(guān)系的碼或者關(guān)系的碼的一部分。以上ER圖的三個(gè)聯(lián)系為多對(duì)多,所以轉(zhuǎn)換為關(guān)系模式為:18課程設(shè)置表:pc(pno,psenior,cno)與設(shè)置相連的實(shí)體有專(zhuān)業(yè)和課程,根據(jù)多對(duì)多的轉(zhuǎn)換原則:專(zhuān)業(yè)的碼pno,課程的碼cno以及設(shè)置本身的屬性共同構(gòu)成該關(guān)系模式的碼,所以該關(guān)系模式的碼為全碼。學(xué)生選課表:SC(sno,psenior,cno,grade)與選課相連的實(shí)體有學(xué)生和課程,同上由學(xué)生的碼sno,課程的碼cno以及選課本身的碼psenior構(gòu)成該關(guān)系模式的碼,即(sno,cno,psenior)。此外,選課表還有一個(gè)非
16、主屬性grade。學(xué)生與專(zhuān)業(yè)的屬于表:SP(sno,pno)與屬于關(guān)系相聯(lián)的實(shí)體是學(xué)生和專(zhuān)業(yè)。同上由學(xué)生的碼sno,專(zhuān)業(yè)的碼pno構(gòu)成該關(guān)系模式的碼,由于此關(guān)系沒(méi)有其他的碼也就沒(méi)有非主屬性。(2)關(guān)系模式的優(yōu)化:學(xué)生表s(sno,sname,ssex,sbirth,spasw)該關(guān)系模式的碼為sno,由于只有一個(gè)碼,所以不存在非主屬性對(duì)碼的部分函數(shù)依賴(lài),可以達(dá)到2NCF。另外,該關(guān)系模式的函數(shù)依賴(lài)為:sno-sname,sno-ssex,sno-ssex,sno-sbirth,sno-spasw,其間不存在傳遞依賴(lài),故學(xué)生表可達(dá)到3NCF.課程表C(cno,cname,cperiod)該關(guān)系模
17、式的碼為cno,cname,設(shè)主碼為cno,因?yàn)樵撽P(guān)系模式中的碼都是單一的,即不存在有兩個(gè)或者兩個(gè)以上的屬性組成的碼,所以不存在非主屬性對(duì)碼的部分函數(shù)依賴(lài),可以達(dá)到2NCF。另外,該關(guān)系模式的函數(shù)依賴(lài)為:cno-cname,cno-cperiod,cname-cno,cname-cperiod.因?yàn)閏no-cname,cname-cperiodcno-cperiod,所以該關(guān)系模式中存在傳遞依賴(lài),不能達(dá)到3NCF。故優(yōu)化該表為:C1(cno,period),C2(cname,cperiod).從而兩表都達(dá)到了3NCF。專(zhuān)業(yè)表P(pno,pname,pnum,pdept)該關(guān)系模式的碼為pno,
18、pname,其中設(shè)定pno為主碼。同課程表,該表不存在有兩個(gè)或者兩個(gè)以上屬性組成的碼,即不存在非主屬性對(duì)碼的部分函數(shù)依賴(lài),故可達(dá)到2NCF。另外,此關(guān)系模式的函數(shù)依賴(lài)為:pno-pname,pno-pnum,pno-pdept,pname-pno,pname-pnum,pname-pdept;由于存在傳遞依賴(lài):pno-pname,pname-pnum,pno-pnum.,所以未能達(dá)到3NCF。優(yōu)化分解為:P1(pno,pnum,pdept),P2(pname,pnum,pdept)明顯,兩表都達(dá)到了3NCF.課程設(shè)置表PC(pno,psenior,cno),該關(guān)系模式的碼為:(pno,psen
19、ior,cno)為全碼,所以可直接達(dá)到3NCF學(xué)生選課表SC(sno,psenior,cno,grade)該關(guān)系模式的碼為:(sno,psenior,cno),因?yàn)椴淮嬖诜侵餍詆rade對(duì)碼的部分函數(shù)依賴(lài),所以可達(dá)到2NCF,由于不存在函數(shù)依賴(lài)(表中的函數(shù)依賴(lài)只有(sno,psenior,cno)-grade)故也達(dá)到了3NCF屬于表SP(sno,pno)該關(guān)系模式的碼(sno,pno)也是全碼,所以也達(dá)到了3NCF用戶(hù)表U(uname,upasw)該表的碼為uname,明顯upasw對(duì)碼uname是完全函數(shù)依賴(lài)的,從而達(dá)到192NCF。另外因?yàn)橹挥袃蓚€(gè)屬性,所以不存在傳遞函數(shù)依賴(lài),該表達(dá)到了
20、3NCF2.3.3物理結(jié)構(gòu)設(shè)計(jì)(1)基本表學(xué)生表s列主候選名碼碼外被參碼照表允許空數(shù)據(jù)類(lèi)型約束條件sno是否否無(wú)否Char(10)snamessexsbirthspasw否否否無(wú)是否否否無(wú)是否否否無(wú)是否否否無(wú)是Char(20)Cha只可取r(2)男或女Char(20)Char(10)課程表c1列主候選名碼碼外被參碼照表允許空數(shù)據(jù)類(lèi)型約束條件cno是否否無(wú)否Char(20cperiod10)否否否無(wú)是smallint課程表c2列主候選名碼碼外被參碼照表允許空數(shù)據(jù)類(lèi)型約束條件cnamecperiod是否否無(wú)否否否否無(wú)是Char(20)smallint專(zhuān)業(yè)表p1列主名碼候選碼外被參碼照表允許空數(shù)據(jù)類(lèi)
21、型約束條件pno是否否無(wú)否Char(10)pnu否否否無(wú)是smaPnum21mllint=0psdept否否否無(wú)是Char(20)專(zhuān)業(yè)表p2列主候選名碼碼外被參碼照表允許空數(shù)據(jù)類(lèi)型約束條件pnamepnumpsdept是否否無(wú)否否否否無(wú)是否否否無(wú)是Char(20)smaPnumllint=0Char(20)課程設(shè)置表pc列主候選名碼碼外被參碼照表允許空數(shù)據(jù)類(lèi)型約束條件pno是否否無(wú)否pse是否否無(wú)否Char(10)Cha22niorcno是否否無(wú)否學(xué)生選課表scr(10)Char(10)列主候選名碼碼外被參碼照表允許空數(shù)據(jù)類(lèi)型約束條件sno是否否無(wú)psenio是否否無(wú)rcno是否否無(wú)否否否Ch
22、ar(10)Char(10)Char(10)grade否否否無(wú)是smallgrade=int0學(xué)生與專(zhuān)業(yè)屬于表sp列主候名碼選外被參允碼照表許數(shù)據(jù)類(lèi)型約束條件23碼空sno是否否無(wú)否pno是否否無(wú)否管理人員密碼表uChar(10)Char(10)列主候選名碼碼外被參碼照表允許空數(shù)據(jù)類(lèi)型約束條件unameupasw是否否無(wú)否否否否無(wú)否Char(20)Char(10)(2)視圖,索引a.索引:本數(shù)據(jù)庫(kù)中的表除了主鍵本身生成的主索引外,沒(méi)有定義其他的索引。在查詢(xún)時(shí)即引用主索引即可。表s的主索引列為:sno24表c1的主索引列為:cno表c2的主索引列為:cname表p1的主索引列為:pno表p2的主
23、索引列為:pname表sc的主索引列為:(pno,psenior,cno)表sp的主索引列為:(sno,pno)表u的主索引列為:unameb視圖:雖然關(guān)系數(shù)據(jù)模型分析的結(jié)果表示該數(shù)據(jù)庫(kù)需要定義不同的用戶(hù)視圖,但考慮到數(shù)據(jù)庫(kù)與前臺(tái)開(kāi)發(fā)程序的連接比較復(fù)雜,所以該數(shù)據(jù)庫(kù)中沒(méi)有單獨(dú)定義用戶(hù)視圖,不同的用戶(hù)視圖被有選擇性的的select語(yǔ)句的結(jié)果集取.2.3.4系統(tǒng)功能設(shè)計(jì)25學(xué)生學(xué)籍歡迎身份及密系統(tǒng)查詢(xún)添加成績(jī)基本信息管理人學(xué)生基本信成績(jī)個(gè)人專(zhuān)業(yè)添更刪263總體設(shè)計(jì)3.1設(shè)計(jì)概述根據(jù)需求把整個(gè)系統(tǒng)分化成不同的模塊,每個(gè)模塊完成一個(gè)特定的子功能。把這些模塊結(jié)合起來(lái)組成一個(gè)整體。逐一實(shí)現(xiàn)各個(gè)功能;3.2
24、系統(tǒng)總體結(jié)構(gòu)及功能模塊劃分經(jīng)過(guò)對(duì)系統(tǒng)的需求分析,學(xué)生信息管理系統(tǒng)主要?jiǎng)澐譃槿齻€(gè)部分:學(xué)生信息查詢(xún),學(xué)生信息管理,學(xué)生成績(jī)錄入三個(gè)功能模塊。如圖3.2.1系統(tǒng)的總體結(jié)構(gòu)。學(xué)生信息管理系學(xué)生信息查詢(xún)學(xué)生信息管理學(xué)生成績(jī)錄入圖3.2.1系統(tǒng)的總體結(jié)構(gòu)273.2.1學(xué)生信息查詢(xún)模塊學(xué)生信息查詢(xún):學(xué)生可以根據(jù)學(xué)號(hào)、姓名、專(zhuān)業(yè)進(jìn)行查詢(xún)。如圖3.2.2學(xué)生信息查詢(xún)模塊結(jié)構(gòu)。學(xué)生信息學(xué)號(hào)查姓名查圖3.2.2學(xué)生信息管理模塊結(jié)構(gòu)3.2.2學(xué)生信息管理模塊學(xué)生信息管理:主要是用于學(xué)生信息更新、插入、刪除,如圖3.2.3學(xué)生管理模塊結(jié)構(gòu)。學(xué)生信息管理學(xué)生信息更新學(xué)生信息錄入學(xué)生信息刪除成績(jī)更新基本信息成績(jī)錄入基本信
25、息28更錄圖3.2.3學(xué)生信息管理模塊結(jié)構(gòu)3.4安全保密設(shè)計(jì)3.4.1用戶(hù)登錄安全性系統(tǒng)設(shè)計(jì)了登錄界面,每個(gè)合法用戶(hù)有用戶(hù)名及一個(gè)密碼,只有當(dāng)用戶(hù)輸入正確的用戶(hù)名及密碼組合后才能夠?qū)W(xué)生信息進(jìn)行操作。4詳細(xì)設(shè)計(jì)4.1概述詳細(xì)設(shè)計(jì)階段的根本目標(biāo)是確定應(yīng)該怎樣具體的實(shí)現(xiàn)所要求的系統(tǒng),也就是說(shuō),經(jīng)過(guò)這個(gè)階段的設(shè)計(jì)工作,應(yīng)該得出目標(biāo)系統(tǒng)的精確描述,從而在編碼階段可以把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語(yǔ)言書(shū)寫(xiě)的程序。294.2系統(tǒng)程序流程圖程序流程圖又稱(chēng)為程序框圖,它是歷史悠久使用最廣泛的描述軟件設(shè)計(jì)的方法。它可將整個(gè)程序的總體流程清楚明白的顯示出來(lái)。如圖4.2.1系統(tǒng)總流程圖結(jié)構(gòu)。圖4.2.1系統(tǒng)總體
26、流程圖304.3系統(tǒng)主要功能模塊簡(jiǎn)介4.3.1系統(tǒng)登錄用戶(hù)憑借用戶(hù)名及密碼登錄,成功登錄后可對(duì)學(xué)生信息進(jìn)行操作。用戶(hù)界面如圖4.3.1用戶(hù)登錄界面所示。圖4.3.1用戶(hù)登錄界面4.3.2學(xué)生信息查詢(xún)模塊學(xué)生信息查詢(xún):在程序主界面(如圖4.3.2程序主界面)學(xué)生可以根據(jù)學(xué)號(hào)、姓名進(jìn)行查詢(xún)。學(xué)生也可以只用一種條件進(jìn)行信息查詢(xún),也可以多個(gè)條件查詢(xún)。雙擊記錄任一單元格可顯示學(xué)生的更詳細(xì)信息。31圖4.3.2程序主界面4.3.3學(xué)生信息管理模塊學(xué)生信息管理:通過(guò)右擊程序主界面的相應(yīng)記錄彈出的上下文菜單可對(duì)當(dāng)前選定學(xué)生信息進(jìn)行詳細(xì)信息查詢(xún)、修改信息、刪除信息。更新時(shí)如果輸入的學(xué)號(hào)不存在,可選擇是否添加學(xué)生
27、信息。通過(guò)程序主界面的新建信息記錄可添加學(xué)生信息。圖4.3.4上下文菜單32圖4.3.6學(xué)生信息增刪改查界面4.3.4管理員信息管理模塊管理員信息管理:通過(guò)右擊程序主界面的相應(yīng)記錄彈出的上下文菜單可對(duì)當(dāng)前選定學(xué)生信息進(jìn)行詳細(xì)信息查詢(xún)、修改信息、刪除信息。更新時(shí)如果輸入的學(xué)號(hào)不存在,可選擇是否添加學(xué)生信息。通過(guò)程序主界面的新建信息記錄可添加學(xué)生信息。33圖4.3.7管理員顯示界面34圖4.3.8管理員添加界面4.3.5管理員信息管理模塊教師信息管理:通過(guò)右擊程序主界面的相應(yīng)記錄彈出的上下文菜單可對(duì)當(dāng)前選定學(xué)生成績(jī)進(jìn)行詳細(xì)信息錄入,更改。更新時(shí)如果輸入的學(xué)號(hào)不存在,可選擇是否添加學(xué)生成績(jī)。通過(guò)程序
28、主界面的新建信息記錄可添加學(xué)生成績(jī)。圖4.3.9教師顯示界面5主要功能模塊代碼5.1公共類(lèi)代碼設(shè)計(jì)namespaceMySqlpublicclassmySql35publicStringconnectionString=SERVER=.SQLEXPRESS;AttachDbFilename=D:學(xué)習(xí)C#課程設(shè)計(jì)StuScoreManSystemStuScoreManSystemStuScoManSys.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstance=True;publicStringcommondText;publicboo
29、lflag;/指示有條該條記錄publicSystem.Data.DataViewtable;publicvoidrunSql()/執(zhí)行查詢(xún)、刪除SQL語(yǔ)句using(SqlConnectionconnection=newSqlConnection(connectionString)connection.Open();SqlCommandcmdQuery=newSqlCommand(commondText,connection);SqlDataAdaptersda=newSqlDataAdapter(commondText,connection);DataSetds=newDataSet();
30、sda.Fill(ds);if(commondText.IndexOf(SELECT)=0)table=ds.Tables0.DefaultView;connection.Close();publicboolgetFlag()/判斷是否有該條記錄using(SqlConnectionconnection=newSqlConnection(connectionString)connection.Open();SqlCommandcmdQuery=newSqlCommand(commondText,connection);SqlDataReaderreader=cmdQuery.ExecuteRe
31、ader();if(reader.Read()flag=true;elseflag=false;reader.Close();connection.Close();returnflag;36publicStringgetContent(Stringrequire,StringSNO)/獲取視圖表的的指定單元格內(nèi)容trycommondText=SELECT+require+FROMdetailWHERE學(xué)號(hào)=+SNO;if(require=up課程名稱(chēng))commondText=SELECT課程名稱(chēng)FROMdetailWHERE學(xué)號(hào)=+SNO;if(require=up成績(jī))commondText
32、=SELECT成績(jī)FROMdetailWHERE學(xué)號(hào)=+SNO;SqlDataAdaptersda=newSqlDataAdapter(commondText,connectionString);DataSetds=newDataSet();sda.Fill(ds);Stringresult=;if(require=課程名稱(chēng)|require=成績(jī))inti=newint();for(i=0;ids.Tables0.Rows.Count;i+)result=result+ds.Tables0.Rowsirequire.ToString()+n;elseresult=ds.Tables0.Rows
33、0require.ToString().Trim();returnresult;catchreturn無(wú);publicvoidupdate()/添加、更新語(yǔ)句tryusing(SqlConnectionconnection=new37SqlConnection(connectionString)connection.Open();SqlCommandcmdInsert=newSqlCommand(commondText,connection);cmdInsert.ExecuteNonQuery();connection.Close();catch(Exceptionex)MessageBox.
34、Show(ex.ToString(),提示);5.2登錄界面代碼設(shè)計(jì)privatevoidlogin_Click(objectsender,EventArgse)/用戶(hù)名及密碼組合判斷if(username.Text.ToString().Trim()!=&password.Text.ToString().Trim()!=)mySqlsql=newmySql();mondText=SELECT*FROMuserdataWHEREUSERNAME=+username.Text.ToString().Trim()+ANDPASSWORD=+password.Text.ToString().Trim
35、()+;trybooltemp=newbool();temp=sql.getFlag();if(temp)this.Visible=false;mainfacemain=newmainface(this);main.Show();38catch(Exceptionex)MessageBox.Show(ex.ToString(),提示);elseMessageBox.Show(請(qǐng)輸入用戶(hù)名和密碼,提示);5.3查詢(xún)模塊代碼設(shè)計(jì)privatevoidbtQuery_Click(objectsender,EventArgse)mySqlquery=newmySql();if(sNInput.Text
36、.Trim()=&sNoinput.Text.Trim()!=)mondText=SELECTSNOAS學(xué)號(hào),SNAS姓名,MNAS專(zhuān)業(yè)名稱(chēng),SEXAS性別,BIRDAYAS出生日期,TSAS總學(xué)分,COMAS備注FROMSWHERESNO=+sNoinput.Text.Trim()+;if(sNInput.Text.Trim()!=&sNoinput.Text.Trim()=)mondText=SELECTSNOAS學(xué)號(hào),SNAS姓名,MNAS專(zhuān)業(yè)名稱(chēng),SEXAS性別,BIRDAYAS出生日期,TSAS總學(xué)分,COMAS備注FROMSWHERESN=+sNInput.Text.Trim()+
37、;if(sNInput.Text.Trim()!=&sNoinput.Text.Trim()!=)mondText=SELECTSNOAS學(xué)號(hào),SNAS姓名,MNAS專(zhuān)業(yè)名稱(chēng),SEXAS性別,BIRDAYAS出生日期,TSAS總學(xué)分,COMAS備注FROMSWHERESN=+sNInput.Text.Trim()+andSNO=+sNoinput.Text.Trim()+;if(sNInput.Text.Trim()=&sNoinput.Text.Trim()=)MessageBox.Show(您輸入的信息為空,請(qǐng)重新輸入!,錯(cuò)誤信息);elseif(query.getFlag()query.
38、runSql();dataGridView1.DataSource=query.table;elseMessageBox.Show(您查找的信息不存在,錯(cuò)誤信息);395.4添加模塊代碼設(shè)計(jì)privatevoidaddbtOK_Click(objectsender,EventArgse)if(addStuNo.Text.Trim()!=&addStuName.Text.Trim()!=&addStuMajor.Text.Trim()!=)mySqlsql=newmySql();mondText=SELECTCNOFROMCWHERECN=+listmn.Text.ToString().Trim
39、()+;sql.runSql();Stringtemp=sql.table.Table.Rows0CNO.ToString();StringsexTemp=radioButton1.Checked?男:女;StringcomTemp;if(addStuCom.Text.ToString().Trim()=)comTemp=;elsecomTemp=addStuCom.Text.ToString().Trim();StringbirTemp=;if(addStuBir.Text.ToString().Trim()=)comTemp=;elsebirTemp=addStuCom.Text.ToSt
40、ring().Trim();mondText=INSERTINTOS(SNO,SN,MN,SEX,BIRDAY,COM)VALUES(+addStuNo.Text.ToString().Trim()+,+addStuName.Text.ToString().Trim()+,+addStuMajor.Text.ToString().Trim()+,+sexTemp+,+birTemp+,+comTemp+);sql.update();if(score.Text.ToString().Trim()!=)mondText=INSERTINTOSC(SNO,CNO,SCORE)VALUES(+addS
41、tuNo.Text.ToString().Trim()+,+temp+,+score.Text.ToString().Trim()+);sql.update();this.Close();40elseMessageBox.Show(學(xué)號(hào)、姓名和專(zhuān)業(yè)名稱(chēng)都不可以為空!,錯(cuò)誤!);privatevoidAddNew_Load(objectsender,EventArgse)/獲取專(zhuān)業(yè)列表mySqlsql=newmySql();mondText=SELECTDISTINCTCNFROMC;SqlDataAdaptersda=newSqlDataAdapter(mondText,sql.connect
42、ionString);DataSetds=newDataSet();sda.Fill(ds);listmn.DataSource=ds.Tables0.DefaultView;listmn.DisplayMember=CN;listmn.DisplayMember=listmn.DisplayMember.ToString().Trim();5.5更新模塊代碼設(shè)計(jì)privatevoidupbtOK_Click(objectsender,EventArgse)mySqlsql=newmySql();mondText=SELECT學(xué)號(hào)FROMdetailWHERE學(xué)號(hào)=+upStuNo.Text.
43、ToString().Trim();boolflagtemp=sql.getFlag();if(!flagtemp)/如果表中無(wú)該條記錄,提示是否進(jìn)行添加新記錄操作if(MessageBox.Show(查無(wú)當(dāng)前記錄,無(wú)法進(jìn)行更新操作!n是否進(jìn)行添加新記錄的操作?,提示,MessageBoxButtons.OKCancel)=DialogResult.OK)if(upStuNo.Text.Trim()!=&upStuName.Text.Trim()!=&upStuMajor.Text.Trim()!=)mySqlsqlme=newmySql();mondText=SELECTCNOFROMC41
44、WHERECN=+listmn.Text.ToString().Trim()+;sqlme.runSql();Stringtemp=sqlme.table.Table.Rows0CNO.ToString();/課程號(hào)StringsexTemp=radioButton1.Checked?男:女;StringcomTemp;if(upStuCom.Text.ToString().Trim()=)comTemp=;elsecomTemp=upStuCom.Text.ToString().Trim();StringbirTemp;if(upStuBir.Text.ToString().Trim()=)birTemp=;elsebirTemp=upStuCom.Text.ToString().Trim();mondText=INSERTINTOS(SNO,SN,MN,SEX,BIR
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度兒童游樂(lè)場(chǎng)主題設(shè)計(jì)策劃與施工合同4篇
- 2025版孟玲與張偉離婚協(xié)議及子女撫養(yǎng)費(fèi)支付與變更執(zhí)行合同4篇
- 上海住宅裝修服務(wù)合同范本(2024版)版B版
- 2025年度商鋪?zhàn)赓U合同商業(yè)秘密保護(hù)及保密協(xié)議4篇
- 2025版綠化用水合同履約驗(yàn)收與評(píng)價(jià)協(xié)議4篇
- 2025版油罐租賃及遠(yuǎn)程監(jiān)控管理系統(tǒng)合同范本3篇
- 二零二五版駕駛員薪酬激勵(lì)與考核合同3篇
- 二零二五版反擔(dān)保協(xié)議書(shū)范本匯編9篇
- 全新多媒體展覽展示合作合同(2025年度)3篇
- 2025年度醫(yī)療器械代理銷(xiāo)售與品牌形象塑造協(xié)議4篇
- 【探跡科技】2024知識(shí)產(chǎn)權(quán)行業(yè)發(fā)展趨勢(shì)報(bào)告-從工業(yè)轟鳴到數(shù)智浪潮知識(shí)產(chǎn)權(quán)成為競(jìng)爭(zhēng)市場(chǎng)的“矛與盾”
- 《中國(guó)政法大學(xué)》課件
- GB/T 35270-2024嬰幼兒背帶(袋)
- 2024-2025學(xué)年高二上學(xué)期期末數(shù)學(xué)試卷(新題型:19題)(基礎(chǔ)篇)(含答案)
- 2022版藝術(shù)新課標(biāo)解讀心得(課件)小學(xué)美術(shù)
- 七上-動(dòng)點(diǎn)、動(dòng)角問(wèn)題12道好題-解析
- 2024年九省聯(lián)考新高考 數(shù)學(xué)試卷(含答案解析)
- 紅色歷史研學(xué)旅行課程設(shè)計(jì)
- 下運(yùn)動(dòng)神經(jīng)元損害綜合征疾病演示課件
- 2023中考地理真題(含解析)
- JJF 1101-2019環(huán)境試驗(yàn)設(shè)備溫度、濕度參數(shù)校準(zhǔn)規(guī)范
評(píng)論
0/150
提交評(píng)論