學(xué)生信息管理系統(tǒng)畢業(yè)論文3
《學(xué)生信息管理系統(tǒng)畢業(yè)論文3》由會(huì)員分享,可在線閱讀,更多相關(guān)《學(xué)生信息管理系統(tǒng)畢業(yè)論文3(25頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 上海xx大學(xué) 畢業(yè)設(shè)計(jì)(論文、作業(yè)) 畢業(yè)設(shè)計(jì)(論文、作業(yè))題目: 學(xué)生信息管理系統(tǒng) 分校(站、點(diǎn)): XX 年級(jí)、專業(yè): 2011秋計(jì)算機(jī)實(shí)用技術(shù) 教育層次: 學(xué)生姓名: XX 學(xué) 號(hào): XXXX
2、XXXXXX 指導(dǎo)教師: XXX 完成日期: 2013年X月1X號(hào) II 目錄 內(nèi)容摘要 I 一、序言 1 二、需求分析 1 三、總體設(shè)計(jì) 2 (一)系統(tǒng)開(kāi)發(fā)工具及其介紹 2 1.VB.NET 2 2.SQLServer2005 2 (二)系統(tǒng)模塊及功能 2 (三)系統(tǒng)流程圖 3 (四)系統(tǒng)結(jié)構(gòu)圖 4 四、 數(shù)據(jù)庫(kù)設(shè)計(jì) 4 (一)數(shù)據(jù)庫(kù)表結(jié)構(gòu)的詳細(xì)設(shè)計(jì) 4 (二) 數(shù)據(jù)庫(kù)表之間的關(guān)系 6 五 、系統(tǒng)功能代碼
3、實(shí)現(xiàn) 7 (一)主窗體設(shè)置 7 (二)登錄 7 (三)基礎(chǔ)資料管理 8 1.用戶注冊(cè) 8 2.用戶管理 9 (四)學(xué)生資料管理 10 1.輸入學(xué)生資料 10 2.修改學(xué)生資料 12 3.查詢學(xué)生資料 13 4.刪除學(xué)生資料 14 (五)學(xué)生成績(jī)管理 15 1.輸入學(xué)生成績(jī) 15 2.查詢學(xué)生成績(jī) 16 3.修改學(xué)生成績(jī) 17 4刪除學(xué)生成績(jī) 18 (六)班級(jí)管理 19 1.學(xué)科管理 19 2.班級(jí)管理 19 (七)密碼修改 19 六 、小結(jié) 20 參考文獻(xiàn): 20 致謝 21 內(nèi)容摘要 信息社會(huì)的高科技,商品經(jīng)濟(jì)化的高效益,使計(jì)算機(jī)的應(yīng)用
4、已普及到經(jīng)濟(jì)和社會(huì)生活的各個(gè)領(lǐng)域。計(jì)算機(jī)已經(jīng)成為我們學(xué)習(xí)和工作的得力助手。學(xué)生信息管理系統(tǒng)是學(xué)校教務(wù)管理中的一個(gè)極為重要的環(huán)節(jié),它是整個(gè)學(xué)校管理的核心和基礎(chǔ)。 本文介紹了學(xué)生信息管理系統(tǒng)的開(kāi)發(fā)整個(gè)過(guò)程,闡述了數(shù)據(jù)庫(kù)設(shè)計(jì)、系統(tǒng)設(shè)計(jì)和系統(tǒng)實(shí)施的全部過(guò)程。采用VisualS2005作為開(kāi)放工具,SQL Server Management Studio作為后臺(tái)數(shù)據(jù)庫(kù)。本系統(tǒng)具有基本資料管理(用戶注冊(cè)、用戶管理兩個(gè)模塊功能)、學(xué)生信息管理、學(xué)生成績(jī)管理、班級(jí)管理、密碼修改等模塊,可分別完成學(xué)生基本信息和學(xué)生成績(jī)管理的輸入、修改、查詢、刪除等功能。通過(guò)學(xué)生信息管理系統(tǒng),可以做到學(xué)生信息、成績(jī)的規(guī)范管理、
5、科學(xué)統(tǒng)計(jì)和快速的查詢,從而減少管理方便的工作量。 關(guān)鍵詞: VB.NET 數(shù)據(jù)庫(kù) 信息管理 學(xué)生信息 I 學(xué)生信息管理系統(tǒng) 一、序言 隨著科學(xué)技術(shù)的不斷進(jìn)步,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一個(gè)重要部分,信息管理系統(tǒng)是一個(gè)由用戶和計(jì)算機(jī)組成的進(jìn)行信息管理、信息收集、存儲(chǔ)處理、傳遞使用和維護(hù)的軟件系統(tǒng)。學(xué)生信息管理系統(tǒng)是學(xué)校地方管理工作過(guò)程中不可缺少的部分,對(duì)學(xué)生信息管理工作,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn),檢索迅速、查找方便、可靠性高、存儲(chǔ)量大等。這些優(yōu)點(diǎn)能夠極大
6、地提高日常查詢的效率。因此,設(shè)計(jì)一個(gè)功能完整、操作簡(jiǎn)便、界面友好的學(xué)生信息管理系統(tǒng)已經(jīng)勢(shì)在必行。本系統(tǒng)開(kāi)發(fā)的目的是提高學(xué)校管理工作的效率,保證信息的準(zhǔn)確和規(guī)范,減少相關(guān)人員的工作量,使學(xué)校的教務(wù)管理工作真正做到科學(xué)、合理的規(guī)劃,系統(tǒng)、高效的實(shí)施。數(shù)據(jù)庫(kù)技術(shù)是一種計(jì)算機(jī)輔助管理數(shù)據(jù)的方法,它研究如何組織和存儲(chǔ)數(shù)據(jù),如何高效地獲取和處理數(shù)據(jù)。 本文介紹了學(xué)生管理系統(tǒng)的設(shè)計(jì)開(kāi)發(fā),主要是基于這樣一種體系,前臺(tái)使用VB.NET設(shè)計(jì)開(kāi)發(fā),通過(guò)ADO.NET來(lái)實(shí)現(xiàn)對(duì)后臺(tái)SQL Server數(shù)據(jù)庫(kù)設(shè)計(jì)管理。從功能上來(lái)說(shuō),該系統(tǒng)實(shí)現(xiàn)課程管理、學(xué)生信息管理、成績(jī)管理和系統(tǒng)管理功能,基本滿足了用戶在教務(wù)管理方面的
7、要求,同時(shí)又能解決實(shí)際問(wèn)題,簡(jiǎn)化用戶的操作。 二、需求分析 為什么需要學(xué)生信息管理系統(tǒng),以往的手工記錄耗時(shí)、耗力,不但浪費(fèi)了大量的資源,并且得不到充分的信息數(shù)據(jù)保護(hù),所以需要一個(gè)既能保護(hù)數(shù)據(jù)又能省時(shí)省力的管理軟件來(lái)進(jìn)行管理。從而開(kāi)發(fā)出一款學(xué)生信息管理系統(tǒng),此系統(tǒng)必須具備能夠管理基礎(chǔ)資料信息、學(xué)生資料、學(xué)生成績(jī)、班級(jí)管理、密碼修改以及用戶登錄模塊,既然是一款管理軟件,那必然需要管理人員來(lái)管理,所以在系統(tǒng)中必須要有對(duì)用戶的管理,以方便管理人員對(duì)用戶進(jìn)行管理。系統(tǒng)中的登錄管理模塊可以限制用戶的登錄權(quán)限,不同的用戶登陸有著不同的管理權(quán)限,如果沒(méi)有登陸模塊,那么所有用戶就可以隨便的進(jìn)入系統(tǒng),擁有同樣
8、的權(quán)限,那樣整個(gè)系統(tǒng)就會(huì)亂掉,所以需要登陸模塊來(lái)限制登陸用戶的權(quán)限從而開(kāi)發(fā)出登陸模塊?;A(chǔ)資料管理模塊可以對(duì)用戶進(jìn)行注冊(cè)、修改和刪除,此功能只有管理員才具備,在一個(gè)管理軟件中,必須要有一個(gè)管理員對(duì)系統(tǒng)中所有的用戶進(jìn)行添加、修改和刪除,從而更好的有效的管理好這款軟件,所以開(kāi)發(fā)出來(lái)了基礎(chǔ)資料管理模塊。對(duì)學(xué)生的資料管理比較復(fù)雜,所以需要對(duì)學(xué)生的信息進(jìn)行統(tǒng)一的有序的管理,因?yàn)樵谝粋€(gè)學(xué)校中,學(xué)生成千上萬(wàn),學(xué)生的資料數(shù)據(jù)也比較的雜亂,所以需要能夠有序統(tǒng)一的來(lái)管理學(xué)生信息,學(xué)生資料管理模塊是統(tǒng)一的對(duì)學(xué)生的基本信息進(jìn)行的添加、刪除、查詢和修改,從而開(kāi)發(fā)出了學(xué)生資料管理模塊。對(duì)學(xué)生的成績(jī)管理也是要有序的管理,學(xué)
9、生成績(jī)管理模塊是對(duì)學(xué)生的學(xué)生成績(jī)輸入、學(xué)生成績(jī)查詢、學(xué)生成績(jī)刪除和對(duì)成績(jī)的修改,手工輸入成績(jī)那是避免不了的,但是查看方式比以往的查看成績(jī)信息方便多了,一目了然,所以開(kāi)發(fā)出了學(xué)生成績(jī)管理模塊。班級(jí)管理是對(duì)學(xué)生所在的班級(jí)進(jìn)行的修改、添加和刪除,因?yàn)閷W(xué)生所在的班級(jí)一定要規(guī)劃好,才能更好的管理學(xué)生,開(kāi)發(fā)班級(jí)模塊只是能夠?qū)Ω梅奖愕墓芾韺W(xué)生,所以開(kāi)發(fā)出了班級(jí)管理模塊。學(xué)科管理對(duì)學(xué)生在某一學(xué)期所有課程的管理,對(duì)課程的添加、修改和刪除,所以開(kāi)發(fā)出了課程管理。成績(jī)管理模塊是用戶對(duì)成績(jī)進(jìn)行查詢使用的,該模塊中用戶可以按班級(jí)、學(xué)號(hào)和課程對(duì)學(xué)生成績(jī)進(jìn)行查詢,成績(jī)查詢模塊只是為了讓用戶更方便的查看成績(jī)信息,所以開(kāi)發(fā)了
10、成績(jī)管理模塊。該系統(tǒng)實(shí)現(xiàn)課程管理、學(xué)生資料管理、學(xué)生成績(jī)管理、班級(jí)管理、成績(jī)查詢和系統(tǒng)管理功能,基本滿足了用戶在教務(wù)管理方面的要求,并具有良好的可擴(kuò)充性。 三、總體設(shè)計(jì) (一)系統(tǒng)開(kāi)發(fā)工具及其介紹 1.VB.NET Visual Basic.NET是基于微軟。NETFramework之上的面向?qū)ο蟮闹虚g解釋性語(yǔ)言,可以看作是Visual Basic在。Net Framework平臺(tái)上的升級(jí)版本,增強(qiáng)了對(duì)面向?qū)ο蟮闹С帧5捎诟膭?dòng)太大,導(dǎo)致VB.net對(duì)VB的向后兼容性不好,在業(yè)界引起不小的爭(zhēng)議。 大多的VB.Net程序員使用Visual Studio .Net作為IDE(integr
11、ated development environment). SharpDevelop是另一種可用的開(kāi)源的IDE。VB.Net需要在。Net Framework平臺(tái)上才能執(zhí)行。 2.SQLServer2005 SQL Server 2005 是一個(gè)全面的數(shù)據(jù)庫(kù)平臺(tái),使用集成的商業(yè)智能 (BI) 工具提供了企業(yè)級(jí)的數(shù)據(jù)管理。SQL Server 2005 數(shù)據(jù)庫(kù)引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲(chǔ)功能,使您可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。 SQL Server 2005 數(shù)據(jù)引擎是本企業(yè)數(shù)據(jù)管理解決方案的核心。此外 SQL Server 2005 結(jié)合
12、了分析、報(bào)表、集成和通知功能。這使您的企業(yè)可以構(gòu)建和部署經(jīng)濟(jì)有效的 BI 解決方案,幫助您的團(tuán)隊(duì)通過(guò)記分卡、Dashboard、Web services 和移動(dòng)設(shè)備將數(shù)據(jù)應(yīng)用推向業(yè)務(wù)的各個(gè)領(lǐng)域。 與 Microsoft Visual Studio、Microsoft Office System 以及新的開(kāi)發(fā)工具包(包括 Business Intelligence Development Studio)的緊密集成使 SQL Server 2005 與眾不同。無(wú)論您是開(kāi)發(fā)人員、數(shù)據(jù)庫(kù)管理員、信息工作者還是決策者,SQL Server 2005 都可以為您提供創(chuàng)新的解決方案,幫助您從數(shù)據(jù)中更多地獲
13、益。 (二)系統(tǒng)模塊及功能 系統(tǒng)模塊劃分如下所示: 登陸管理模塊:為了系統(tǒng)的安全性,根據(jù)不同權(quán)限給出不同服務(wù)。 基礎(chǔ)資料模塊:僅系統(tǒng)管理員可用,對(duì)這個(gè)系統(tǒng)的所有用戶進(jìn)行管理和新用戶的注冊(cè)。 學(xué)生資料模塊:僅教務(wù)可用,對(duì)學(xué)生資料的管理,輸入、修改、查詢、刪除等操作。 學(xué)生成績(jī)模塊:僅今教師可用,對(duì)學(xué)生成績(jī)的管理,輸入、修改、查詢、刪除等操作。 班級(jí)管理模塊:對(duì)學(xué)生班級(jí)課程添加、刪除的管理,這是教務(wù)教師管理員都有的權(quán)限。 密碼修改模塊:對(duì)登陸用戶的密碼修改。只限修改登陸號(hào)的秘密。 (三)系統(tǒng)流程圖 系統(tǒng)登錄分登陸成功和失敗,失敗則重新登陸或退出,成功則進(jìn)入相應(yīng)的權(quán)限模塊,基本資
14、料管理模塊、學(xué)生資料管理模塊、學(xué)生成績(jī)管理模塊和班級(jí)管理模塊等,基本資料管理模塊主要是對(duì)系統(tǒng)中用戶的管理,對(duì)用戶進(jìn)行的添加、修改和刪除。 圖 1 系統(tǒng)流程 (四)系統(tǒng)結(jié)構(gòu)圖 在學(xué)生信息管理系統(tǒng)中分為登陸、修改密碼、學(xué)生資料管理、學(xué)生成績(jī)管理、基本資料管理和班級(jí)管理,登陸和基本資料管理在系統(tǒng)流程中已作解釋,下面對(duì)學(xué)生資料管理、學(xué)生成績(jī)管理和班級(jí)管理。學(xué)生資料管理中分為輸入學(xué)生資料、修改學(xué)生資料、查詢學(xué)生資料和刪除學(xué)生資料。學(xué)生成績(jī)管理中分為輸入學(xué)生成績(jī)、修改學(xué)生成績(jī)、查詢學(xué)生成績(jī)和刪除學(xué)生成績(jī),手工輸入成績(jī)那是避免不了的,但是查看方式比以往的查看成績(jī)信息方便多了,一目了然。學(xué)生成
15、績(jī)查詢的開(kāi)發(fā)是能讓用戶更詳細(xì)的查詢到某一個(gè)學(xué)生、班級(jí)、課程的所有信息。班級(jí)管理分為班級(jí)管理、學(xué)科管理,對(duì)班級(jí)和學(xué)科進(jìn)行添加、修改和刪除的管理,相對(duì)以往的手工管理方便的很多。 圖 2 系統(tǒng)結(jié)構(gòu) 四、 數(shù)據(jù)庫(kù)設(shè)計(jì) (一)數(shù)據(jù)庫(kù)表結(jié)構(gòu)的詳細(xì)設(shè)計(jì) 本系統(tǒng)采用SQL Server 2000數(shù)據(jù)庫(kù)系統(tǒng),在該系統(tǒng)中新建一個(gè)數(shù)據(jù)庫(kù),將其命名為xsxx,然后再在該數(shù)據(jù)庫(kù)中創(chuàng)建5個(gè)數(shù)據(jù)表: 用戶表其中姓名是用戶表的用戶名,它是用來(lái)用戶登錄用戶表,其字段都不為空,姓名設(shè)為主鍵。如下圖3所示: 圖3 用戶表 成績(jī)表是來(lái)存放科目成績(jī)的,其中ID為主鍵而且序號(hào)是自增長(zhǎng)(也就是標(biāo)識(shí)為是),除ID以外其它字
16、段都為空。如圖4所示: 圖4 成績(jī)表 科目表存放著科目信息字段有科目編號(hào)、科目名稱,科目編號(hào)設(shè)為主鍵,兩個(gè)字段都不允許為空,如圖5所示: 圖5 科目表 學(xué)生基本信息表存放了學(xué)生的基本信息,其中電話、住址和相片的字段允許為空其余的不允許為空,學(xué)號(hào)設(shè)為主鍵如下圖6所示: 圖6 學(xué)生基本信息表 班級(jí)表存放著班級(jí)信息字段有班號(hào)、班級(jí)其字段都不為空,班號(hào)設(shè)為主鍵。如圖7所示: 圖7 班級(jí)表 (二) 數(shù)據(jù)庫(kù)表之間的關(guān)系 數(shù)據(jù)庫(kù)表之間的關(guān)系如圖8所示。 圖8數(shù)據(jù)庫(kù)表之間的關(guān)系 五 、系統(tǒng)功能代碼實(shí)現(xiàn) (一)主窗體設(shè)置 前面已
17、經(jīng)介紹了本系統(tǒng)的模塊劃分,每個(gè)子模塊就代表一個(gè)窗體。主窗體有三個(gè)界面都是一樣的。主窗體就是將各個(gè)子窗體通過(guò)菜單項(xiàng)結(jié)合在一起,方便調(diào)用。不同的用戶擁有不同的權(quán)限,管理員在主窗體里只能進(jìn)入基礎(chǔ)資料管理和修改自己的登錄密碼和班級(jí)管理,教師在主窗體除了對(duì)學(xué)生成績(jī)管理和班級(jí)管理進(jìn)行操作外,也可以對(duì)自己的登錄密碼進(jìn)行修改。教務(wù)的權(quán)限是對(duì)學(xué)生資料管理、班級(jí)管理的操作和對(duì)自己登錄密碼的修改。 主窗體界面: 圖9主窗體 功能代碼如下: Dim frl As New 登錄 frl.Show() 用來(lái)跳轉(zhuǎn)界面的,定義新的窗體,在主窗體當(dāng)用戶單擊這個(gè)事件的時(shí)候跳轉(zhuǎn)到這個(gè)界面。其它跳轉(zhuǎn)界面的代
18、碼與此一樣,就此省略。 (二)登錄 程序運(yùn)行時(shí)進(jìn)入的是主界面,然后要進(jìn)入登陸界面,在登陸中輸入正確用戶、密碼后才能進(jìn)入所相對(duì)權(quán)限的管理,登陸界面有分用戶權(quán)限,不同用戶進(jìn)入后具備的功能不同。 功能代碼如下: For i As Integer = 0 To Me.XsxxDataSet.用戶.Count - 1 If TextBox1.Text.Trim = Me.XsxxDataSet.用戶(i).姓名.Trim And TextBox2.Text.Trim = Me.XsxxDataSet.用戶(i).密碼.Trim Then Form1.Timer1.Tag = Me.
19、XsxxDataSet.用戶(i).權(quán)限 Form1.Timer1.Enabled = True Me.Close() Exit Sub End If Next MsgBox("姓名或密碼輸入錯(cuò)誤!") End Sub 首先進(jìn)行判斷用戶名和密碼是否為空,如果為空就會(huì)報(bào)錯(cuò)。如果在文本框中輸入用戶名和密碼,和數(shù)據(jù)庫(kù)中的用戶名密碼進(jìn)行比對(duì),失敗則系統(tǒng)提示登陸失敗,密碼或用戶名。并判斷用戶類型也就是用戶的權(quán)限,給出相應(yīng)的功能。 登陸界面: 圖10登錄界面 (三)基礎(chǔ)資料管理 基礎(chǔ)資料管理有2個(gè)界面。分別是用戶注冊(cè)界面,用戶管理界面。 1.用戶注冊(cè)
20、 用戶的姓名和密碼不能為空,已經(jīng)注冊(cè)過(guò)的用戶不能重復(fù)注冊(cè),用戶權(quán)限采用選擇輸入法。用戶注冊(cè)界面只有管理員可以進(jìn)行注冊(cè),其他用戶不開(kāi)放。 功能代碼如下: For i As Integer = 0 To Me.XsxxDataSet.用戶.Count - 1 If Me.Text.Trim = Me.XsxxDataSet.用戶(i).姓名.Trim Then MsgBox("該用戶已經(jīng)存在!") Exit Sub End If Next
21、 If TextBox1.Text = "" Or TextBox2.Text = "" Then MsgBox("姓名和密碼不能為空!") Else Me.XsxxDataSet.用戶.Add用戶Row(TextBox1.Text, TextBox2.Text, ComboBox1.SelectedIndex.ToString) Me.用戶TableAdapter.Update(Me.XsxxDataSet.用戶) Me.XsxxDataSet.用戶.AcceptC
22、hanges() MsgBox("注冊(cè)成功!") 用戶注冊(cè)界面: 圖11用戶注冊(cè) 2.用戶管理 用戶管理是對(duì)用戶進(jìn)行刪除和權(quán)限修改,窗體使用了DataGridView控件用來(lái)顯示用戶表的信息,該窗體只有管理員能進(jìn)行操作。 Me.用戶TableAdapter.Fill(Me.XsxxDataSet.用戶)’拖拉到界面上自動(dòng)生成的代碼 Me.DataGridView1.DataSource = Me.用戶BindingSource’這是DataGridView與用戶表綁定 下面的代碼是打在DataGridView的單擊事件下,使單擊DataGridView里
23、的條信息進(jìn)行修改: TextBox1.Text = Me.XsxxDataSet.用戶(Me.用戶DataGridView.CurrentRow.Index).密碼 If Me.XsxxDataSet.用戶(Me.用戶DataGridView.CurrentRow.Index).權(quán)限 = "0" Then ComboBox1.Text = "管理員" ComboBox1.SelectedIndex = 0 End If If Me.XsxxDataSet.用戶(Me.用戶DataGridVi
24、ew.CurrentRow.Index).權(quán)限 = "1`" Then ComboBox1.Text = "教師" ComboBox1.SelectedIndex = 1 End If If Me.XsxxDataSet.用戶(Me.用戶DataGridView.CurrentRow.Index).權(quán)限 = "2" Then ComboBox1.Text = "教務(wù)" ComboBox1.SelectedIndex = 2 End If
25、 權(quán)限修改代碼如下: Me.XsxxDataSet.用戶(Me.用戶DataGridView.CurrentRow.Index).密碼 = TextBox1.Text Me.XsxxDataSet.用戶(Me.用戶DataGridView.CurrentRow.Index).權(quán)限 = ComboBox1.SelectedIndex.ToString Me.用戶TableAdapter.Update(Me.XsxxDataSet.用戶) Me.XsxxDataSet.用戶.AcceptChanges() MsgBox(
26、"修改成功") 刪除代碼如下: If MsgBox("確定刪除嗎?", MsgBoxStyle.OkCancel) = MsgBoxResult.Ok Then Me.XsxxDataSet.用戶(Me.用戶DataGridView.CurrentRow.Index).Delete() Me.用戶TableAdapter.Update(Me.XsxxDataSet.用戶) Me.XsxxDataSet.用戶.AcceptChanges() 用戶管理界面: 圖12 用戶管理 (四)學(xué)生資料管理
27、1.輸入學(xué)生資料 按班級(jí)逐個(gè)輸入新生資料:新生的學(xué)號(hào)由系統(tǒng)自動(dòng)生成;用打開(kāi)文件對(duì)話框和圖片對(duì)話框控件完成學(xué)生相片文件的導(dǎo)入和顯示。 輸入學(xué)生資料界面: 圖13輸入學(xué)生資料 功能代碼如下: If Me.OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then Try Me.PictureBox1.Image = Image.FromFile(Me.OpenFileDialog1.FileName) zx = Tex
28、tBox1.Text + _ Me.OpenFileDialog1.FileName.Substring(Me.OpenFileDialog1.FileName.LastIndexOf(".")) Catch ex As Exception zx = "無(wú).jpg" End Try Else zx = "無(wú).jpg" End If Button3.Enabled = True 以上這段代碼是導(dǎo)入
29、照片功能,只有導(dǎo)入照片后,存入資料按鈕才能有用。在保存新生資料時(shí)對(duì)輸入項(xiàng)作必要驗(yàn)證,把新生的相片文件改名為其學(xué)號(hào)+文件后綴后存放到項(xiàng)目的debug/pc文件夾內(nèi)。如果沒(méi)有正常導(dǎo)入相片文件,則暫時(shí)用”無(wú).jif ”相片名稱。 Sub bh() If Me.XsxxDataSet.學(xué)生基本信息.Count = 0 Then TextBox1.Text = Me.班級(jí)ComboBox.SelectedValue + "1" Exit Sub End If Dim cl As String =
30、 XsxxDataSet.學(xué)生基本信息(XsxxDataSet.學(xué)生基本信息.Count - 1).學(xué)號(hào).Substring(6, 2) If cl.Substring(1, 1) = "9" Then TextBox1.Text = Trim(Me.班級(jí)ComboBox.SelectedValue) + "0" + (Val(cl.Substring(0, 1)) + 1).ToString + "0" Else TextBox1.Text = Trim(Me.班級(jí)ComboBox.SelectedVal
31、ue) + "0" + cl.Substring(0, 1) + (Val(cl.Substring(1, 1)) + 1).ToString 在輸入學(xué)生資料窗體中,有三處代碼要實(shí)現(xiàn)學(xué)號(hào)的自動(dòng)生成功能,為此,以上編寫(xiě)一個(gè)用戶自定義過(guò)程bh()來(lái)實(shí)現(xiàn)學(xué)號(hào)自動(dòng)生成功能。 If TextBox2.Text = "" Then MsgBox("必須輸入姓名!") Exit Sub End If If zx <> "無(wú).jpg" Then Me.PictureBox1.Image.Sa
32、ve(Application.StartupPath + "/pc/" + zx) End If 以上是存入資料事件過(guò)程的代碼。 2.修改學(xué)生資料 按班級(jí)顯示學(xué)生資料,選擇要修改的學(xué)生,顯示該學(xué)生的所有信息(包括相片圖像),再修改,替換該學(xué)生資料額相片后予以保存。 修改學(xué)生資料管理界面: 圖14 修改學(xué)生資料 這個(gè)窗體在運(yùn)行時(shí)不但在班級(jí)下拉列表,學(xué)生資料數(shù)據(jù)表格里出現(xiàn)了第一個(gè)班級(jí)名稱和這個(gè)班級(jí)的學(xué)生資料,在修改學(xué)生資料的框內(nèi),也已經(jīng)顯示了該班第一個(gè)學(xué)生的資料以待修改。 存入資料按鈕代碼功能代碼如下: Dim n As Integer = Me.學(xué)生基
33、本信息DataGridView.CurrentRow.Index Me.XsxxDataSet.學(xué)生基本信息(n).姓名 = TextBox2.Text Me.XsxxDataSet.學(xué)生基本信息(n).電話 = TextBox3.Text Me.XsxxDataSet.學(xué)生基本信息(n).住址 = TextBox4.Text Me.XsxxDataSet.學(xué)生基本信息(n).出生日期 = Me.DateTimePicker1.Value Me.XsxxDataSet.學(xué)生基本信息(n).性別 = Me.
34、ComboBox2.Text Me.XsxxDataSet.學(xué)生基本信息(n).相片 = zx Me.學(xué)生基本信息TableAdapter.Update(Me.XsxxDataSet.學(xué)生基本信息) Me.XsxxDataSet.學(xué)生基本信息.AcceptChanges() 學(xué)生基本信息DataGridView_Click事件過(guò)程中的代碼如下: Try Dim n As Integer = Me.學(xué)生基本信息DataGridView.CurrentRow.Index TextBox1
35、.Text = Me.XsxxDataSet.學(xué)生基本信息(n).學(xué)號(hào) TextBox2.Text = Me.XsxxDataSet.學(xué)生基本信息(n).姓名 TextBox3.Text = Me.XsxxDataSet.學(xué)生基本信息(n).電話 TextBox4.Text = Me.XsxxDataSet.學(xué)生基本信息(n).住址 Me.DateTimePicker1.Value = Me.XsxxDataSet.學(xué)生基本信息(n).出生日期 ComboBox2.
36、Text = Me.XsxxDataSet.學(xué)生基本信息(n).性別 zx = Me.XsxxDataSet.學(xué)生基本信息(n).相片.Trim Me.PictureBox1.Image = Image.FromFile("./pc/" + zx) Catch ex As Exception End Try 3.查詢學(xué)生資料 查詢學(xué)生資料可以按照學(xué)號(hào)和姓名進(jìn)行詳細(xì)查詢,也可以根據(jù)班級(jí)索引進(jìn)行查詢,對(duì)查詢學(xué)生的基本信息十分便捷。既可以按班級(jí)顯示該學(xué)生姓名,再選定要查詢的學(xué)生完成查詢,也可以按學(xué)生的學(xué)號(hào)或姓
37、名進(jìn)行模糊查找來(lái)完成查詢。 查詢學(xué)生資料界面: 圖15 查詢學(xué)生資料 查詢功能代碼如下: Try Dim n As Integer = Me.學(xué)生基本信息ListBox.SelectedIndex TextBox2.Text = Me.XsxxDataSet.學(xué)生基本信息(n).班號(hào) TextBox3.Text = Me.XsxxDataSet.學(xué)生基本信息(n).班級(jí) TextBox4.Text = Me.XsxxDataSet.學(xué)生基本信息(n).學(xué)號(hào)
38、 TextBox5.Text = Me.XsxxDataSet.學(xué)生基本信息(n).姓名 TextBox6.Text = Me.XsxxDataSet.學(xué)生基本信息(n).性別 TextBox7.Text = Me.XsxxDataSet.學(xué)生基本信息(n).出生日期 TextBox8.Text = Me.XsxxDataSet.學(xué)生基本信息(n).電話 TextBox9.Text = Me.XsxxDataSet.學(xué)生基本信息(n).住址 Me.Picture
39、Box1.Image = Image.FromFile("./pc/" + Me.XsxxDataSet.學(xué)生基本信息(n).相片) Catch ex As Exception End Try 以上是學(xué)生基本信息ListBox_Click的代碼。 If RadioButton1.Checked Then cl = "select * from 學(xué)生基本信息 where 學(xué)號(hào) like %" + TextBox1.Text.Trim + "%" Else cl = "select
40、 * from 學(xué)生基本信息 where 姓名 like %" + TextBox1.Text.Trim + "%" End If Dim ad As New SqlClient.SqlDataAdapter(cl, 學(xué)生基本信息TableAdapter.Connection) Me.XsxxDataSet.學(xué)生基本信息.Clear() ad.Fill(Me.XsxxDataSet.學(xué)生基本信息) 學(xué)生基本信息ListBox_Click(sender, e) 以上是“確定”按鈕Button1_Clic
41、k事件過(guò)程的代碼。 4.刪除學(xué)生資料 刪除學(xué)生資料是對(duì)錯(cuò)誤的學(xué)生信息、多余的進(jìn)行刪除,設(shè)計(jì)簡(jiǎn)單,這里就不多做說(shuō)明了。 刪除學(xué)生資料界面: 圖16刪除學(xué)生資料 主要功能代碼如下: If MsgBox("確定刪除嗎?", MsgBoxStyle.OkCancel) = MsgBoxResult.Ok Then End If Me.XsxxDataSet.學(xué)生基本信息(Me.學(xué)生基本信息DataGridView.CurrentRow.Index).Delete() Me.學(xué)生基本信息TableAdapter.Up
42、date(Me.XsxxDataSet.學(xué)生基本信息) Me.XsxxDataSet.學(xué)生基本信息.AcceptChanges() (五)學(xué)生成績(jī)管理 1.輸入學(xué)生成績(jī) 按班級(jí)逐個(gè)輸入學(xué)生一門(mén)學(xué)科成績(jī),一個(gè)班級(jí)的這門(mén)學(xué)科成績(jī)?nèi)绻呀?jīng)輸入完畢,就會(huì)顯示相應(yīng)提示,如果這個(gè)班級(jí)的魔門(mén)學(xué)科成績(jī)輸入到退出了操作,下次進(jìn)入同一個(gè)班級(jí)同一門(mén)學(xué)科成績(jī)輸入時(shí),會(huì)自動(dòng)從上次沒(méi)有輸入成績(jī)的第一個(gè)學(xué)生開(kāi)始提示輸入。這樣既符合用戶的工作習(xí)慣,提高系統(tǒng)效率,又不會(huì)重復(fù)某個(gè)輸入某個(gè)學(xué)生的單科成績(jī)。 輸入學(xué)生成績(jī)管理界面: 圖17 輸入學(xué)生成績(jī) 存入按鈕功能代碼如下: Me.Xsx
43、xDataSet.成績(jī).Add成績(jī)Row(Me.XsxxDataSet.學(xué)生基本信息(n).學(xué)號(hào), Me.科目ComboBox.SelectedValue, TextBox2.Text, Me.班級(jí)ComboBox.Text, Me.班級(jí)ComboBox.SelectedValue) Me.Validate() Me.成績(jī)BindingSource.EndEdit() Me.成績(jī)TableAdapter.Update(Me.XsxxDataSet.成績(jī)) n += 1 If n < Me.XsxxData
44、Set.學(xué)生基本信息.Count Then TextBox1.Text = Me.XsxxDataSet.學(xué)生基本信息(n).姓名 TextBox2.Text = 0 Else MsgBox("該班級(jí)本門(mén)學(xué)科成績(jī)輸入完畢!") Button1.Enabled = False 班級(jí)ComboBox_SelectedIndexChanged事件過(guò)程代碼如下: Try Me.成績(jī)TableAdapter.FillBy(Me.XsxxDataSet.
45、成績(jī), Me.班級(jí)ComboBox.SelectedValue, Me.科目ComboBox.SelectedValue) Me.學(xué)生基本信息TableAdapter.FillBy(Me.XsxxDataSet.學(xué)生基本信息, Me.班級(jí)ComboBox.SelectedValue) n = Me.XsxxDataSet.成績(jī).Count If n < Me.XsxxDataSet.學(xué)生基本信息.Count Then TextBox1.Text = Me.XsxxDataSet.學(xué)生
46、基本信息(n).姓名 TextBox2.Text = 0 Button1.Enabled = True Else MsgBox("該班級(jí)部門(mén)學(xué)科成績(jī)輸入完畢!") Button1.Enabled = False End If Catch ex As Exception End Try 2.查詢學(xué)生成績(jī) 查詢學(xué)生成績(jī)既可以按班級(jí)和學(xué)科顯示該班學(xué)生這門(mén)學(xué)科的成
47、績(jī),也可以按學(xué)號(hào)或姓名模糊查詢一個(gè)學(xué)生全部學(xué)科的成績(jī)。 查詢學(xué)生成績(jī)界面: 圖18查詢學(xué)生成績(jī) 班級(jí)ComboBox_SelectedIndexChanged事件過(guò)程代碼如下: Try Me.成績(jī)TableAdapter.FillBy(Me.XsxxDataSet.成績(jī), Me.班級(jí)ComboBox.SelectedValue, Me.科目名稱ComboBox.SelectedValue) Me.學(xué)生基本信息TableAdapter.FillBy(Me.XsxxDataSet.學(xué)生基本信息, Me.班級(jí)ComboBox
48、.SelectedValue) Catch ex As Exception End Try Try 確定按鈕過(guò)程代碼如下: Me.XsxxDataSet.學(xué)生基本信息.Clear() If RadioButton1.Checked Then cl = "select * from 學(xué)生基本信息 where 學(xué)號(hào) like %" + TextBox1.Text.Trim + "%" Else cl = "select * from 學(xué)生基本信息 where 姓
49、名 like %" + TextBox1.Text.Trim + "%" End If Dim ad As New SqlClient.SqlDataAdapter(cl, Me.學(xué)生基本信息TableAdapter.Connection) ad.Fill(Me.XsxxDataSet.學(xué)生基本信息) ListBox1_Click(sender, e) 3.修改學(xué)生成績(jī) 修改學(xué)生成績(jī),按班級(jí)和學(xué)科顯示學(xué)生成績(jī),選擇要修改的學(xué)生,顯示該學(xué)生的這門(mén)學(xué)科成績(jī)以待修改,修改后可保存修改結(jié)果并在DataGridView
50、.上顯示修改結(jié)果。 修改學(xué)生成績(jī)界面: 圖19修改學(xué)生成績(jī) 成績(jī)DataGridView_Click功能代碼如下: Dim cl As String = XsxxDataSet.成績(jī)(成績(jī)DataGridView.CurrentRow.Index).學(xué)號(hào) TextBox1.Text = XsxxDataSet.學(xué)生基本信息.FindBy學(xué)號(hào)(cl).姓名 TextBox2.Text = XsxxDataSet.成績(jī)(成績(jī)DataGridView.CurrentRow.Index).科目成績(jī) 班級(jí)ComboBox_SelectedIn
51、dexChanged事件過(guò)程代碼如下: Try Me.成績(jī)TableAdapter.FillBy(Me.XsxxDataSet.成績(jī), Me.班級(jí)ComboBox.SelectedValue, Me.科目ComboBox.SelectedValue) Me.學(xué)生基本信息TableAdapter.FillBy(Me.XsxxDataSet.學(xué)生基本信息, Me.班級(jí)ComboBox.SelectedValue) 成績(jī)DataGridView_Click(sender, e) Catch ex As
52、 Exception End Try 存入代碼事件過(guò)程代碼如下: XsxxDataSet.成績(jī)(成績(jī)DataGridView.CurrentRow.Index).科目成績(jī) = TextBox2.Text Me.成績(jī)TableAdapter.Update(Me.XsxxDataSet.成績(jī)) Me.XsxxDataSet.成績(jī).AcceptChanges() 4刪除學(xué)生成績(jī) 刪除學(xué)生成績(jī)是對(duì)錯(cuò)誤的學(xué)生信息、多余的進(jìn)行刪除,設(shè)計(jì)簡(jiǎn)單,跟刪除學(xué)生資料功能一樣,這里也就不多做說(shuō)明了。 刪除學(xué)生成績(jī)界面: 圖20刪除學(xué)生成績(jī) 主要
53、功能代碼如下: If MsgBox("確定刪除嗎?", MsgBoxStyle.OkCancel) = MsgBoxResult.Ok Then End If Me.XsxxDataSet.成績(jī)(Me.成績(jī)DataGridView.CurrentRow.Index).Delete() Me.成績(jī)TableAdapter.Update(Me.XsxxDataSet.成績(jī)) Me.XsxxDataSet.成績(jī).AcceptChanges() End Sub (六)班級(jí)管理 這兩個(gè)比較簡(jiǎn)單,不用輸入代碼,只用連
54、接到數(shù)據(jù)源添加到頁(yè)面,再與對(duì)應(yīng)的TextBox控件進(jìn)行綁定就可以了。 1.學(xué)科管理 界面如下: 圖21 學(xué)科管理 2.班級(jí)管理 圖22 班級(jí)管理 (七)密碼修改 修改密碼要判斷用戶和密碼控件是否為空外,還要進(jìn)行比較也就是說(shuō)兩次確認(rèn)密碼,其他的功能就不用一一介紹,因?yàn)榇蠖嗪颓懊娼缑娴拇a基本相識(shí)。 密碼修改界面: 圖23修改密碼 功能代碼如下: 用戶登錄自己的賬號(hào)后,能對(duì)自己的密碼進(jìn)行修改。 Dim n As Integer = Val(Form1.Tag) Private Sub Button1_Click(ByVal sen
55、der As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If Me.TextBox2.Text.Trim = "" Or TextBox2.Text <> TextBox3.Text Then MsgBox("密碼不能為空,兩次輸入密碼必須一樣!") Exit Sub End If Me.XsxxDataSet.用戶(n).密碼 = TextBox2.Text Me.用戶TableA
56、dapter.Update(Me.XsxxDataSet.用戶) Me.XsxxDataSet.用戶.AcceptChanges() MsgBox("修改密碼成功!") 六 、小結(jié) 一個(gè)完整的學(xué)生管理系統(tǒng)已經(jīng)創(chuàng)建完成。在學(xué)生信息管理系統(tǒng)中,首先進(jìn)行了詳細(xì)的需求分析,劃分了課程管理、學(xué)籍管理、班級(jí)管理、課表管理、成績(jī)管理、系別管理和查詢成績(jī)模塊,然后進(jìn)行了數(shù)據(jù)庫(kù)的分析與設(shè)計(jì),創(chuàng)建數(shù)據(jù)表以及表關(guān)聯(lián),最后通過(guò)VB.NET進(jìn)行了應(yīng)用程序的開(kāi)發(fā),實(shí)現(xiàn)了系統(tǒng)中的一些基本功能。 參考文獻(xiàn): [1]、陳偉平 ,《程序設(shè)計(jì)應(yīng)用試驗(yàn)指導(dǎo)》, 上海高教電子音像出版
57、社 [2]、顧曉梅 ,《數(shù)據(jù)庫(kù)應(yīng)用技術(shù)教程》 ,上海XX大學(xué)教材 [3]、陳海建 ,《程序設(shè)計(jì)基礎(chǔ)實(shí)驗(yàn)指導(dǎo)》, 上海XX大學(xué)教材 致謝 首先,我要感謝我的指導(dǎo)老師XX,從選題、畢業(yè)設(shè)計(jì)的制作過(guò)程中她給予我悉心指導(dǎo).XX老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,誨人不倦的敬業(yè)精神深深感染著我。 其次,我要感謝我的家人和朋友,尤其是我的家人,雖然你們并不懂我做的課題研究,但是你們給予了我前進(jìn)的動(dòng)力和永不放棄的精神; 最后,感謝上海開(kāi)放大學(xué)計(jì)算機(jī)應(yīng)用技術(shù)(網(wǎng)絡(luò)管理)的各位老師的日常教導(dǎo)和培養(yǎng),你們是良師也是益友,給予我很多幫助。 感謝上海XX大學(xué)計(jì)算機(jī)應(yīng)用技術(shù)(網(wǎng)絡(luò)管理)的全體同學(xué)給我的真摯幫助。 感謝我的朋友們?cè)谏钪信阄易哌^(guò)的每一天。 22
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 外研版高中英語(yǔ)選修六Module6第三課時(shí)語(yǔ)法講解
- 初三中考二輪復(fù)習(xí)語(yǔ)法專題動(dòng)詞時(shí)態(tài)專項(xiàng)教學(xué)課件
- 辦公室員工健康指南
- Unit 2 Lesson 11 Australia
- 《產(chǎn)房秘密早知道》課件
- 第7單元—認(rèn)識(shí)鐘表
- 第5課時(shí)小數(shù)乘小數(shù)(3)
- 文集員工危機(jī)意識(shí)培訓(xùn)課件
- 患者病情評(píng)估培訓(xùn)
- 表內(nèi)乘法(一)整理與復(fù)習(xí) (2)(教育精品)
- 2022年冀教版《Lesson40-Move-Your-Body》課件-3
- 高頻鉬靶X線機(jī)在乳腺疾病中的應(yīng)用
- 第24章圓的復(fù)習(xí)課件(教育精品)
- 品管圈提高下肢深靜脈血栓預(yù)防措施落實(shí)率課件
- 大學(xué)生戀愛(ài)觀課件