版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上一、課程設(shè)計(jì)(綜合實(shí)驗(yàn))的目的與要求1.通過該課程設(shè)計(jì)要使學(xué)生樹立起強(qiáng)烈的工程化意識(shí),用工程化思想和方法開發(fā)軟件。切實(shí)體會(huì)出用軟件工程的方法開發(fā)系統(tǒng)與一般程序設(shè)計(jì)方法的不同之處,學(xué)生在對(duì)所開發(fā)的系統(tǒng)進(jìn)行軟件計(jì)劃、需求分析、設(shè)計(jì)的基礎(chǔ)上,實(shí)現(xiàn)并測試實(shí)際開發(fā)的系統(tǒng)。通過一系列規(guī)范化軟件文檔的編寫和系統(tǒng)實(shí)現(xiàn),使學(xué)生具備實(shí)際軟件項(xiàng)目分析、設(shè)計(jì)、實(shí)現(xiàn)和測試的基本能力;2至少提交4個(gè)文檔,包括軟件計(jì)劃、軟件需求規(guī)格說明書、軟件設(shè)計(jì)說明書、軟件測試計(jì)劃,要求文檔格式規(guī)范、邏輯性強(qiáng)(可參考計(jì)算機(jī)綜合實(shí)踐指導(dǎo)中給出的要求及格式)、圖表規(guī)范; 3獨(dú)自實(shí)現(xiàn)了系統(tǒng)的某些功能,基本達(dá)到了要求的
2、性能,經(jīng)過測試,基本能運(yùn)行。二、設(shè)計(jì)(實(shí)驗(yàn))正文1.引言1.1.系統(tǒng)開發(fā)的背景、目的和意義1.1.1.系統(tǒng)開發(fā)的背景當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代。在各行各業(yè)中離不開信息處理,這正是計(jì)算機(jī)被廣泛應(yīng)用于信息管理系統(tǒng)的環(huán)境。計(jì)算機(jī)的最大好處在于利用它能夠進(jìn)行信息管理。使用計(jì)算機(jī)進(jìn)行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。尤其對(duì)于復(fù)雜的信息管理,計(jì)算機(jī)能夠充分發(fā)揮它的優(yōu)越性。管理信息系統(tǒng)是進(jìn)行信息的采集、存儲(chǔ)、加工、維護(hù)和使用的系統(tǒng)。它是隨著管理科學(xué)和技術(shù)科學(xué)的發(fā)展而形成的。學(xué)生檔案管理系統(tǒng)是一個(gè)教育單位不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來說都至關(guān)重要,所以學(xué)生成績管理系
3、統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄巍5恢币詠砣藗兪褂脗鹘y(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)學(xué)生成績信息進(jìn)行管理,具有著手工管理所無法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生檔案管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重
4、要條件。因此,開發(fā)這樣一套管理軟件成為很有必要的事情,學(xué)生學(xué)籍管理系統(tǒng)提供了強(qiáng)大的學(xué)生成績管理管理功能,方便管理員對(duì)學(xué)生學(xué)籍等信息的添加.修改.刪除.查詢.匯總.統(tǒng)計(jì)等操作。更適合大型數(shù)據(jù)庫的管理。1.1.2.系統(tǒng)開發(fā)的目的和意義由于將數(shù)據(jù)錄入FoxPro的工作是學(xué)校工作人員直接對(duì)FoxPro數(shù)據(jù)庫的操作,而隨著各學(xué)校的合并后的人數(shù)的變化導(dǎo)致了管理的復(fù)雜性,所以一些學(xué)校就自己開發(fā)了學(xué)生信息管理系統(tǒng),這就是最初的學(xué)生管理信息系統(tǒng)。這種初級(jí)的學(xué)生管理信息系統(tǒng)的主要功能是:為學(xué)校管理工作人員輸入大量數(shù)據(jù)提供一個(gè)操作簡單、使用方便的友好界面;在已有的數(shù)據(jù)中作簡單的查詢和統(tǒng)計(jì)。1.2系統(tǒng)開發(fā)的工具和環(huán)境
5、1.2.1 Visual Studio 2010概述Visual Studio.2010是.NET平臺(tái)下最為強(qiáng)大的開發(fā)工具,無論是軟件服務(wù)商,還是企業(yè)應(yīng)用程序的部署與發(fā)布,Visual Studio.NET都可以提供近乎完美的解決方案。VisuaStudio.2010提供了包括設(shè)計(jì)、編碼、編譯調(diào)試、數(shù)據(jù)庫連接操作等基本功能和基于開放架構(gòu)的服務(wù)器組件開發(fā)平臺(tái)、企業(yè)開發(fā)工具和應(yīng)用程序重新發(fā)布工具以及性能評(píng)測報(bào)告等高級(jí)功能。1.2.2 C# 簡介C#是一種先進(jìn),面向?qū)ο蟮恼Z言,通過C#可以讓開發(fā)人員快速的建立大范圍的基于MS網(wǎng)絡(luò)平臺(tái)的應(yīng)用,并且提供大量的開發(fā)工具和服務(wù)幫助開發(fā)人員開發(fā)基于計(jì)算和通信的
6、各種應(yīng)用。由于C#是一種面向?qū)ο蟮拈_發(fā)語言,所以C#可以大范圍的適用于高層商業(yè)應(yīng)用和底層系統(tǒng)的開發(fā)。即使是通過簡單的C#構(gòu)造也可以使各種組件方便的轉(zhuǎn)變?yōu)榛赪EB的應(yīng)用,并且能夠通過Internet被各種系統(tǒng)或是其他開發(fā)語言所開發(fā)的應(yīng)用程序調(diào)用。1.2.3 ASP簡介 ASP是Active Server Page的縮寫,意為“動(dòng)態(tài)服務(wù)器頁面”。ASP是微軟公司開發(fā)的代替CGI腳本程序的一種應(yīng)用,它可以與數(shù)據(jù)庫和其它程序進(jìn)行交互,是一種簡單、方便的編程工具。ASP的網(wǎng)頁文件的格式是.asp,現(xiàn)在常用于各種動(dòng)態(tài)網(wǎng)站中。 ASP是一種服務(wù)器端腳本編寫環(huán)境,可以用來創(chuàng)建和運(yùn)行動(dòng)態(tài)網(wǎng)頁或Web應(yīng)用程序。
7、ASP網(wǎng)頁可以包含HTML標(biāo)記、普通文本、腳本命令以及COM組件等。利用ASP可以向網(wǎng)頁中添加交互式內(nèi)容(如在線表單),也可以創(chuàng)建使用HTML網(wǎng)頁作為用戶界面的web應(yīng)用程序。1.2.4 Server SQL Microsoft簡介Microsoft SQL Server 2008是一個(gè)高性能的客戶端/服務(wù)器結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS,Relational Database Management System)。SQL Server 2008是為了支持高容量的事務(wù)處理(比如在線訂購錄入、存貨目錄、記帳或制造)以及數(shù)據(jù)倉庫和決策支持系統(tǒng)(比如銷售分析應(yīng)用)而設(shè)計(jì)的。它運(yùn)行在Micros
8、oft Windows NT4或Microsoft Windows 20008 Server上基于intel處理器的網(wǎng)絡(luò)??梢园裇QL Server 2008作為一種個(gè)人桌面數(shù)據(jù)庫系統(tǒng)安裝在運(yùn)行Window NT Workstation 4、Windows 2008 Professional、Windows98和Windows Millennium Edition(Me)的機(jī)器上。2.系統(tǒng)分析與設(shè)計(jì)2.1系統(tǒng)的需求分析和可行性分析2.1.1系統(tǒng)的需求分析學(xué)生學(xué)籍管理系統(tǒng)是基于學(xué)校的工作需求而設(shè)定,圍繞這一明確的工作需求,根據(jù)高校人員結(jié)構(gòu)分析,在項(xiàng)目開發(fā)前期的需求分析工程中,學(xué)生學(xué)籍管理系統(tǒng)的應(yīng)
9、用應(yīng)包括系統(tǒng)設(shè)置、學(xué)生信息管理、學(xué)生成績管理以及系統(tǒng)說明等部分。系統(tǒng)應(yīng)具有學(xué)生學(xué)籍信息輸入、刪除和修改的功能,學(xué)生成績信息亦是如此。系統(tǒng)的查詢功能應(yīng)較為完備,不同的用戶將登錄到不同的主界面,進(jìn)行不同的界面操作功能。能方便快捷地進(jìn)行相應(yīng)數(shù)據(jù)的簡單查詢和任意字段組合的復(fù)合查詢,改變以前只有專門人員才能進(jìn)行數(shù)據(jù)查詢的情況。系統(tǒng)應(yīng)有學(xué)生數(shù)據(jù)安全保密措施,由于身份不同將登錄到不同的主界面,高級(jí)的用戶可以操作低級(jí)用戶的信息,而低級(jí)用戶之間互不能操作,保持了信息的安全性。但在需要時(shí)可由系統(tǒng)維護(hù)人員通過添加用戶并授權(quán)來設(shè)置相應(yīng)權(quán)限。在系統(tǒng)程序設(shè)計(jì)中應(yīng)充分利用數(shù)據(jù)庫服務(wù)器的處理能力,降低網(wǎng)絡(luò)通信量,盡可能減少數(shù)
10、據(jù)修改沖突,以最大程度地提高系統(tǒng)的執(zhí)行速度和可靠性,真正起到提高工作效率的作用。2.1.2可行性分析系統(tǒng)可行性主要包括3個(gè)方面:技術(shù)上的可行性、經(jīng)濟(jì)上的可行性和管理上的可行性。a、系統(tǒng)在技術(shù)上無論是硬件性能要求(包括外圍設(shè)備),還是軟件性能要求(包括Win2000操作系統(tǒng)、Winxp操作系統(tǒng)、Powerbuilder、SQL server,程序設(shè)計(jì),軟件開發(fā)工具),均可行。b、從開發(fā)項(xiàng)目的成本與效益來看,系統(tǒng)開發(fā)的設(shè)備費(fèi)用、運(yùn)行費(fèi)用、培訓(xùn)費(fèi)用并不大,而通過系統(tǒng)的實(shí)施,一方面,提高了工作效率,將帶來更多的經(jīng)濟(jì)效益;另一方面,系統(tǒng)所產(chǎn)生的間接效益也不容忽視。工作效率的提高可以節(jié)省人力資源,減輕了有
11、關(guān)業(yè)務(wù)人員手工處理的工作負(fù)擔(dān),及時(shí)提供決策信息,促進(jìn)業(yè)務(wù)的規(guī)范化、系統(tǒng)化、條理化和程序化。c、科學(xué)的管理是建立管理信息系統(tǒng)的前提。管理人員支持本系統(tǒng)的研發(fā)運(yùn)行,相應(yīng)的管理制度改革的時(shí)機(jī)已經(jīng)成熟,規(guī)章制度已經(jīng)齊全,原始數(shù)據(jù)正確。隨著時(shí)代的發(fā)展,人員素質(zhì)已經(jīng)逐步提高,不論是對(duì)于電腦系統(tǒng)的基本操作還是對(duì)于系統(tǒng)的維護(hù)都有了一定的基礎(chǔ)。同時(shí)還可以配置專業(yè)的電腦維護(hù)人員來維護(hù)電腦,不必?fù)?dān)心電腦故障問題。2.2學(xué)籍管理需求分析2.2.1.系統(tǒng)登錄學(xué)籍管理系統(tǒng)系統(tǒng)登錄模塊,面對(duì)的用戶是系統(tǒng)管理員、教師以及學(xué)生。主要功能是:(1)系統(tǒng)分三種登錄模式,各模式登錄成功后將進(jìn)入不同的主界面。(2)教師登錄需使用教師姓
12、名和教師的工號(hào),學(xué)生登錄需使用學(xué)生姓名和學(xué)號(hào)。2.2.2.信息管理學(xué)籍管理系統(tǒng)信息管理模塊,主要面對(duì)的用戶是學(xué)校的管理人員。其主要職責(zé):(1)學(xué)生信息的錄入。學(xué)生在入校后,學(xué)校將為每一位學(xué)生分配一個(gè)學(xué)號(hào),根據(jù)學(xué)生所屬系部,所選專業(yè)給學(xué)生分配班級(jí),學(xué)校將根據(jù)學(xué)生的學(xué)號(hào)和姓名將學(xué)生的所有信息錄入學(xué)生學(xué)籍管理系統(tǒng),以便對(duì)學(xué)生進(jìn)行統(tǒng)一管理。(2)學(xué)生信息的查詢。系統(tǒng)管理員、教師以及學(xué)生本人都可以進(jìn)行信息查詢,獲取學(xué)生信息;對(duì)于學(xué)生而言,學(xué)生需提供學(xué)號(hào)和姓名進(jìn)行查詢,目的是為了避免除學(xué)生本身以外的其他學(xué)生盜取信息,進(jìn)行非法行為。(3)學(xué)生信息的修改。此模塊只有系統(tǒng)管理員和教師可以操作,學(xué)生沒有權(quán)限。2.
13、2.3.成績管理學(xué)籍管理系統(tǒng)成績管理模塊,主要面對(duì)的用戶是系統(tǒng)管理員和教師,學(xué)生只有查詢信息的功能。其主要職責(zé)是:(1)成績錄入。每個(gè)學(xué)生在考試后都有一個(gè)成績,教師根據(jù)每個(gè)人的考試結(jié)果,將成績錄入成績管理中,以便學(xué)生查詢和期末匯總。(2)成績查詢。管理員、教師和學(xué)生都可以通過此模塊查詢成績,教師可以查詢整個(gè)班級(jí)的學(xué)生成績,但學(xué)生只能查詢自己的成績。(3)成績修改。如有學(xué)生成績錄入出錯(cuò)時(shí),教師可找到學(xué)生成績信息,并進(jìn)行修改。2.2.4.系統(tǒng)說明學(xué)籍管理系統(tǒng)系統(tǒng)說明模塊,主要對(duì)本系統(tǒng)進(jìn)行說明,方便用戶操作使用。2.2.5.注銷管理學(xué)籍管理系統(tǒng)注銷管理模塊,主要功能是:(1)注銷用戶。用戶需要更換登
14、陸用戶時(shí),可通過注銷,重新從登陸界面登陸到系統(tǒng)。(2)關(guān)閉。退出整個(gè)應(yīng)用系統(tǒng)。3.數(shù)據(jù)庫設(shè)計(jì)3.1數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)采用了E-R圖的方法進(jìn)行數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)。E-R圖是描述數(shù)據(jù)庫實(shí)體關(guān)系的一種直觀工具。這種圖中有:實(shí)體。用方框表示。方框內(nèi)為實(shí)體的名稱。實(shí)體的各種屬性。用橢圓表示,橢圓內(nèi)為屬性名稱。使用線段將其和相應(yīng)的實(shí)體連接起來。實(shí)體之間的關(guān)系。用菱形表示,菱形內(nèi)為聯(lián)系的名稱。實(shí)體和實(shí)體之間的聯(lián)系較多,比較常見的聯(lián)系有1:1,1:N和M:N這三種。根據(jù)對(duì)人事管理信息系統(tǒng)情況的掌握,繪制了相應(yīng)的E-R圖。由于數(shù)據(jù)庫中的信息太多,只取部分示例:用戶名問題答案登錄編號(hào)管理員1、 管理員登錄信
15、息表答案問題用戶名登錄編號(hào)教師2、 教師登錄信息表答案問題用戶名登錄學(xué)號(hào)學(xué)生3、 學(xué)生登錄信息表出生性別姓名籍貫班級(jí)編號(hào)學(xué)號(hào)學(xué)生信息4、 學(xué)生信息表班級(jí)名稱班級(jí)編號(hào)專業(yè)編號(hào)班級(jí)信息5、 班級(jí)信息表專業(yè)編號(hào)系部編號(hào)專業(yè)名稱專業(yè)信息6、 專業(yè)信息表系部編號(hào)系部名稱系部信息7、 系部信息表專業(yè)編號(hào)課程編號(hào)課程名稱學(xué)分學(xué)時(shí)課程類別課程信息8、 課程信息表學(xué)號(hào)課程編號(hào)考試成績作業(yè)成績平時(shí)成績課程信息最后得分9、 成績信息表3.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)是獨(dú)立于實(shí)際數(shù)據(jù)模型的信息結(jié)構(gòu),必須將其轉(zhuǎn)化為邏輯結(jié)構(gòu)后才能進(jìn)行數(shù)據(jù)庫應(yīng)用設(shè)計(jì)。也就是要將概念上的結(jié)構(gòu)轉(zhuǎn)化為數(shù)據(jù)庫系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型。第一種轉(zhuǎn)化是
16、將實(shí)體轉(zhuǎn)化為關(guān)系表。這種轉(zhuǎn)化較簡單,需要將實(shí)體的屬性定義為表的屬性即可。第二種轉(zhuǎn)化時(shí)聯(lián)系的轉(zhuǎn)化。即將各個(gè)實(shí)體之間的聯(lián)系轉(zhuǎn)化為表格之間的關(guān)系,如外部鍵的定義。在系統(tǒng)分析及數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)的基礎(chǔ)上,將系統(tǒng)E-R圖轉(zhuǎn)換成關(guān)系模型的邏輯結(jié)構(gòu),并根據(jù)選用的數(shù)據(jù)庫管理系統(tǒng)SQL Server作了適當(dāng)?shù)男薷?,同時(shí)考慮到學(xué)生學(xué)籍管理系統(tǒng)的實(shí)際情況,在上面工作的基礎(chǔ)上歸納出學(xué)籍管理數(shù)據(jù)庫表格的組成、列的屬性、表格之間的聯(lián)系等待,得到了如下的關(guān)系數(shù)據(jù)庫表。同時(shí)該數(shù)據(jù)庫系統(tǒng)具有以下方面的特點(diǎn):結(jié)構(gòu)合理,對(duì)一個(gè)學(xué)生建立多條記錄。所建立的數(shù)據(jù)冗余度小,獨(dú)立性強(qiáng)。建檔、修改、查詢、統(tǒng)計(jì)快而準(zhǔn)確。保密性好、可靠性好。(1
17、)管理員登錄信息表,表名為T_Administrator_user,主鍵為Num。字段名 字段類型 能否為空 含義Id int not null 編號(hào)Num char(9) not null 管理員工號(hào)Name nvarchar(50) not null 管理員名稱Question nvarchar(50) null 問題Answer nvarchar(50) null 答案(2)學(xué)生登錄信息表,表名為T_Student_user,主鍵為Num。字段名 字段類型 能否為空 含義Id int not null 編號(hào)Num char(9) not null 學(xué)號(hào)Name nvarchar(50)
18、not null 學(xué)生姓名Question nvarchar(50) null 問題Answer nvarchar(50) null 答案(3)教師登錄信息表,表名為T_Teacher_user,主鍵為Num。字段名 字段類型 能否為空 含義Id int not null 編號(hào)Num char(9) not null 教師工號(hào)Name nvarchar(50) not null 教師姓名Question nvarchar(50) null 問題Answer nvarchar(50) null 答案(4)學(xué)生信息表,表名為T_Student,主鍵為Num。字段名 字段類型 能否為空 含義Num
19、char(9) not null 學(xué)號(hào)Name nvarchar(8) not null 姓名Sex nchar(2) null 性別Birthday smalldatetime null 出生Address nvarchar(100) null 籍貫 classID char(10) null 班級(jí)編號(hào) (5)班級(jí)信息表,表名為T_Class,主鍵為classID。字段名 字段類型 能否為空 含義classID char(10) not null 班級(jí)編號(hào)className nvarchar(50) null 班級(jí)名稱majorID char(10) null 專業(yè)編號(hào)(6)專業(yè)信息表,表名
20、為T_Major,主鍵為majorID。字段名 字段類型 能否為空 含義majorID char(10) not null 專業(yè)編號(hào)majorName nvarchar(50) null 專業(yè)名稱departmentID char(10) null 系部編號(hào)(7)系部信息表,表名為T_Department,主鍵為departmentID。字段名 字段類型 能否為空 含義departmentID char(10) not null 系部編號(hào)departmentName nvarchar(50) null 系部名稱(8)課程信息表,表名為T_Course,主鍵為CourseID。字段名 字段類型
21、能否為空 含義CourseID char(5) not null 課程編號(hào)CourseName nvarchar(50) not null 課程名稱Category char(10) null 課程類別Period smallint null 學(xué)時(shí)Credit tinyint null 學(xué)分majorID nchar(10) null 專業(yè)編號(hào)(9)成績信息表,表名為T_Grade,主鍵為Num和CourseID。字段名 字段類型 能否為空 含義Num char(10) not null 學(xué)號(hào)CourseID char(5) not null 課程編號(hào)DailyGrade decimal(5,
22、 1) null 平時(shí)成績PracticeGrade decimal(5, 1) null 作業(yè)成績TestGrade decimal(5, 1) null 考試成績Grade decimal(5, 1) null 最終得分4.系統(tǒng)設(shè)計(jì)4.1.登錄窗口的設(shè)計(jì)登錄窗口放置了三個(gè)label、兩個(gè)TextBox、一個(gè)ComboBox和兩個(gè)Button,其中TextBox是用來接收用戶鍵入的用戶名和密碼,ComboBox是用來選擇登錄身份,通過按鈕“登陸”執(zhí)行代碼,通過查詢后臺(tái)數(shù)據(jù)庫信息,查出是否有此用戶,從而決定用戶是否被允許進(jìn)入主系統(tǒng),通過按鈕“退出”執(zhí)行代碼退出真?zhèn)€系統(tǒng)。如圖:管理員登錄賬戶和密
23、碼都是admin,教師登錄賬戶和密碼都是teacher。實(shí)現(xiàn)代碼如下:public static string Num; public static string Person; private void btnLogin_Click(object sender, EventArgs e) string Name = txtUserName.Text.Trim(); Num = txtUserPwd.Text.Trim(); string sql="" switch (cbPerson.SelectedIndex) case 0: Person = cbPerson.Tex
24、t; sql = "select * from T_Administrator_user where Num='" + Num + "'" break; case 1: Person = cbPerson.Text; sql = "select * from T_Teacher_user where Num='" + Num + "'" break; case 2: Person = cbPerson.Text; sql = "select * from T_Student
25、_user where Num='" + Num + "'" break; SqlDataReader sdr = dataOperate.getRow(sql); if (sdr.Read() if (Name = sdr"Name".ToString() txtUserPwd.Text = "" this.Visible = false; if (Person = "Administrator" | Person = "Teacher") AdminTeacherM
26、anagementSystem atms = new AdminTeacherManagementSystem(); atms.Show(); if (Person = "Student") StudentManagementSystem x = new StudentManagementSystem(); x.Show(); else MessageBox.Show("用戶名錯(cuò)誤,請(qǐng)重新輸入!"); else MessageBox.Show("對(duì)不起,用戶不存在!"); return; private void btnExit_Cl
27、ick(object sender, EventArgs e) Application.Exit(); /注冊 private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) AddUser Add = new AddUser(); Add.Show(); 4.2.建立應(yīng)用程序主窗口本系統(tǒng)的主窗口如圖:系統(tǒng)主界面4.3.菜單的設(shè)計(jì)系統(tǒng)設(shè)置面刪除用戶添加用戶信息管理信息錄入信息查詢成績查詢成績錄入成績管理成績修改信息修改關(guān)閉注銷注銷系統(tǒng)說明4.4.刪除用戶界面的設(shè)計(jì)刪除用戶窗口界面如圖:頁面加
28、載時(shí),通過訪問數(shù)據(jù)庫,加載學(xué)生姓名信息并綁定到學(xué)生姓名;由于考慮重名的問題,可通過姓名查詢學(xué)生的學(xué)號(hào),再根據(jù)學(xué)號(hào)查尋具體學(xué)生的信息;通過刪除按鈕,用戶可刪除當(dāng)前用戶的信息。實(shí)現(xiàn)代碼如下:private SqlConnection con; private SqlDataAdapter sdapt; private DataSet ds,ds1; private void DeleteUser_Load(object sender, EventArgs e) /加載系部信息 string sql = "select * from T_Department" ds1 = dat
29、aOperate.getDataSet(sql,"T_Department"); cbDepartment.DataSource = ds1.Tables0; cbDepartment.DisplayMember = "departmentName" private void btnLeftAll_Click(object sender, EventArgs e) this.BindingContextds, "T_Student".Position = 0; btnLeftAll.Enabled = false; btnLeft.E
30、nabled = false; btnRight.Enabled = true; btnRightAll.Enabled = true; private void btnLeft_Click(object sender, EventArgs e) if (this.BindingContextds, "T_Student".Position > 0) this.BindingContextds, "T_Student".Position-; if (this.BindingContextds, "T_Student".Posit
31、ion = 0) btnLeftAll.Enabled = false; btnLeft.Enabled = false; btnRight.Enabled = true; btnRightAll.Enabled = true; private void btnRight_Click(object sender, EventArgs e) if (this.BindingContextds, "T_Student".Position < this.BindingContextds, "T_Student".Count - 1) this.Bindi
32、ngContextds, "T_Student".Position+; if (this.BindingContextds, "T_Student".Position = this.BindingContextds, "T_Student".Count - 1) btnRight.Enabled = false; btnRightAll.Enabled = false; btnLeft.Enabled = true; btnLeftAll.Enabled = true; private void btnRightAll_Click(o
33、bject sender, EventArgs e) this.BindingContextds, "T_Student".Position = this.BindingContextds, "T_Student".Count - 1; btnLeft.Enabled = true; btnLeftAll.Enabled = true; btnRight.Enabled = false; btnRightAll.Enabled = false; private void btnDelete_Click(object sender, EventArgs e
34、) /刪除學(xué)生賬戶信息 int i= this.BindingContextds, "T_Student".Position; string Num = ds.Tables"T_Student".Rowsi0.ToString(); string sql = "delete from T_Student_user where Num='" + Num + "'" bool flag = dataOperate.execSQL(sql); if (flag) /刪除T_Student表中的數(shù)據(jù) sql
35、 = "delete from T_Student where Num='"+Num+"'" bool flag1 = dataOperate.execSQL(sql); if (flag1) MessageBox.Show("刪除成功!"); getInfo(); else MessageBox.Show("刪除用戶信息失敗!"); return; /int rowID = this.BindingContextds, "T_Student".Position; /ds.Tab
36、les"T_Student".RowsrowID.Delete(); /sdapt.Update(ds, "T_Student"); /this.BindingContextds, "T_Student".Position = 0; /btnLeft.Enabled = false; /btnLeftAll.Enabled = false; /btnRight.Enabled = true; /btnRightAll.Enabled = true; else MessageBox.Show("刪除用戶賬戶失??!")
37、; return; private void btnClose_Click(object sender, EventArgs e) this.Close(); private void cbDepartment_SelectedIndexChanged(object sender, EventArgs e) string sql = "select mr.majorName from T_Major as mr,T_Department as dt where dt.departmentName='" + cbDepartment.Text + "'
38、; and mr.departmentID=dt.departmentID" ds1 = dataOperate.getDataSet(sql, "T_Major"); cbMajor.DataSource = ds1.Tables0; cbMajor.DisplayMember = "majorName" private void cbMajor_SelectedIndexChanged(object sender, EventArgs e) string sql = "select cs.className from T_Clas
39、s as cs,T_Major as mr where mr.majorName='" + cbMajor.Text + "' and cs.majorID=mr.majorID" ds1 = dataOperate.getDataSet(sql, "T_Class"); cbClass.DataSource = ds1.Tables0; cbClass.DisplayMember = "className" private void cbClass_SelectedIndexChanged(object s
40、ender, EventArgs e) getInfo(); public void getInfo() con = dataOperate.createConnection(); con.Open(); string sql = "select st.Num as '學(xué)號(hào)',st.Name as '姓名',st.Sex as '性別',st.Birthday as '出生',st.Address as '籍貫' from T_Student as st,T_Class as cs where cs.cl
41、assName='" + cbClass.Text + "' and st.classID=cs.classID" sdapt = new SqlDataAdapter(sql, con); ds = new DataSet(); sdapt.Fill(ds, "T_Student"); dataGridView1.DataSource = ds; dataGridView1.DataMember = "T_Student" dataGridView1.ReadOnly = true; 4.5.學(xué)生信息錄入界
42、面設(shè)計(jì)其窗口界面如下圖:這里只能對(duì)學(xué)生進(jìn)行添加,即身份只能選擇Student。實(shí)現(xiàn)代碼如下:private static string sql = "" public static string Num = "" public static string Name = "" private void cbShenFen_SelectedIndexChanged(object sender, EventArgs e) Num = txtNum.Text; Name = txtUserName.Text; switch (cbShenFe
43、n.SelectedIndex) case 0: sql = "select * from T_Administrator_user where Num='" + Num + "'" break; case 1: sql = "select * from T_Teacher_user where Num='" + Num + "'" break; case 2: sql = "select * from T_Student_user where Num='"
44、; + Num + "'" break; bool flag = dataOperate.seleSQL(sql); if (flag) MessageBox.Show("對(duì)不起,此用戶已經(jīng)存在!"); return; private void btnOk_Click(object sender, EventArgs e) /判斷用戶名是否已經(jīng)存在 bool flag = dataOperate.seleSQL(sql); if (flag) MessageBox.Show("對(duì)不起,此用戶已經(jīng)存在!"); return; /
45、如果前兩次都沒有錯(cuò)誤,就將新用戶信息寫入數(shù)據(jù)庫 switch (cbShenFen.SelectedIndex) case 0: sql = "insert into T_Administrator_user values('" + txtNum.Text + "','" + txtUserName.Text + "','" + txtQuestion.Text + "','" + txtAnswer.Text + "')" bre
46、ak; case 1: sql = "insert into T_Teacher_user values('" + txtNum.Text + "','" + txtUserName.Text + "','" + txtQuestion.Text + "','" + txtAnswer.Text + "')" break; case 2: sql = "insert into T_Student_user values('" + txtNum.Text + "','" + txtUserName.Text + "','" + txtQuestion.Text + "','" + txtAnswer.Text + "')" break; flag = dataOperate.execSQL(sql); if (flag) Mes
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 四川省成都市簡陽市2021年中考語文一診試題及參考答案
- 小學(xué)數(shù)學(xué)五年級(jí)上冊小數(shù)乘除法解決問題
- 小學(xué)生一年級(jí)20以內(nèi)的加減法練習(xí)題
- 《簡短戒煙干預(yù)技術(shù)》課件
- 《奧斯維辛沒有新聞》課件
- 煤炭銷售代理委托合同三篇
- 自主學(xué)習(xí)環(huán)境的構(gòu)建工作計(jì)劃
- 汽車設(shè)計(jì)師工作總結(jié)
- 人力資源行業(yè)業(yè)務(wù)員工作總結(jié)
- 線上線下整合營銷策略計(jì)劃
- 清華大學(xué)大學(xué)物理-光的偏振
- 心理健康教育-網(wǎng)絡(luò)與青少年
- 高中英語人教版(2019) 選擇性必修一 Unit 3 課文語法填空(含答案)
- 三年級(jí)道德與法制上學(xué)期期末考試質(zhì)量分析集合3篇
- 2021-2022學(xué)年陜西省寶雞市陳倉區(qū)北師大版六年級(jí)上冊期末考試數(shù)學(xué)試卷(含答案解析)
- 應(yīng)用PDCA提高入院宣教的知曉率
- 裝修增減項(xiàng)單模板
- 線性系統(tǒng)理論鄭大鐘307張課件
- 2019-2020學(xué)年第一學(xué)期廣東省廣州市天河區(qū)3年級(jí)數(shù)學(xué)期末考試卷
- 纏論公式(最完美自動(dòng)畫筆公式)主圖
- 肩凝證(肩周炎)的臨床路徑修改后
評(píng)論
0/150
提交評(píng)論