




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù) 據(jù) 庫 課 程 設(shè) 計 設(shè) 計課題名稱: 學(xué)生學(xué)籍管理系統(tǒng)的設(shè)計與實現(xiàn) 系 別: 計算機科學(xué)與技術(shù) 專 業(yè): 計算機科學(xué)與技術(shù) 班 級: 11級專升本1班 姓 名: 劉雙鋒 指導(dǎo)教師: 戚曉明 目 錄摘要 I一、 前 言 1(一 系統(tǒng)開發(fā)的背景、目的和意義 11. 系統(tǒng)開發(fā)的背景 12. 系統(tǒng)開發(fā)的目的和意義 2(二)系統(tǒng)開發(fā)的工具和環(huán)境 2二 、 系統(tǒng)分析與設(shè)計 4(一 系統(tǒng)的需求分析和可行性分析 41. 系統(tǒng)的需求分析 42. 可行性分析 4(二 學(xué)籍管理需求分析 51系統(tǒng)登錄 52.信息管理 53.成績管理 64.系統(tǒng)說明 65.注銷管理 7三、數(shù)據(jù)庫設(shè)計 8(一 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計
2、 8(二 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計 11四、系統(tǒng)設(shè)計 15(一 登錄窗口的設(shè)計 15(二 建立應(yīng)用程序主窗口 17(三菜單的設(shè)計 18(四 刪除用戶界面的設(shè)計 18(五 學(xué)生信息錄入界面設(shè)計 23(六 學(xué)生信息查詢界面設(shè)計 32(七 修改學(xué)生信息界面設(shè)計 35五、結(jié)束語 46致謝 47參考文獻 48學(xué)生學(xué)籍管理系統(tǒng)的設(shè)計與實現(xiàn)摘要當(dāng)今社會中,計算機的使用已經(jīng)深入到日常工作和生活的方方面面。Windows 系統(tǒng)的推出使電腦從高雅的學(xué)術(shù)殿堂走入了尋常百姓家,各行各業(yè)的人們無須經(jīng)過特別的訓(xùn)練就能夠使用電腦完成許許多多復(fù)雜的工作。然而,雖然現(xiàn)在世界上已經(jīng)充滿了多如牛毛的各種軟件,但它們依然不能滿足用戶的各種
3、特殊需要,人們還不得不開發(fā)適合自己特殊需求的軟件。我們都知道,對于學(xué)生的學(xué)籍管理是一個教育單位不可缺少的部分, 它的內(nèi)容對學(xué)校的管理者來說至關(guān)重要,所以學(xué)生學(xué)籍管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。而使用計算機對學(xué)生學(xué)籍信息進行管理,具有手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、存儲量大、保密性好等。這些優(yōu)點能夠極大地提高學(xué)生管理的效率,也是學(xué)??茖W(xué)化、正規(guī)化管理的重要途徑。根據(jù)蚌埠學(xué)院教務(wù)處加
4、強學(xué)生學(xué)籍管理化的需要,結(jié)合目前管理系統(tǒng)的發(fā)展現(xiàn)狀和教務(wù)處的實際情況,對蚌埠學(xué)院學(xué)生學(xué)籍管理系統(tǒng)進行了設(shè)計和開發(fā)。該系統(tǒng)根據(jù)學(xué)籍管理工作的內(nèi)容和特點,在充分注重軟件操作的交互性、簡單性以及科學(xué)可視化原則的前提下,及時為學(xué)籍管理提供準(zhǔn)確、全面的數(shù)據(jù)和分析結(jié)果,能有效提高學(xué)校學(xué)籍管理的工作效率、質(zhì)量及管理決策的有效性、可靠性和實際性,實現(xiàn)學(xué)生學(xué)籍管理工作的計算機現(xiàn)代化管理。關(guān)鍵詞:學(xué)生學(xué)籍管理系統(tǒng),C#程序設(shè)計語言AbstractNowadays in society, computer sigmatism already goes deep into the Fang Fang face arr
5、iving at daily work and life. Systematic debuting of Windows makes a computer run a family from elegant learning palace hall to haveentered common common people , the all professions and trades people usesa computer to be completed unnecessarily by that special training can right away lots and lots
6、of complicated job.But although having already been full of the countless various software in the world now, they can not satisfy consumer's various requiring that people has to develop the software being suitable to self peculiar need peculiarly as before. We all know the self's status as a
7、 student to the student manages the part being a indispensability educating an unit, its content is to the school director all-important, therefore student self's status as a student management system ought to be able to be that the consumer provides sufficient information and rapid inquiry mean
8、s.But always in the past people is using the artificial tradition way administration document file , this there is existing a lot of shortcoming in supervisor mode, such as: Inefficient , keep secret nature is bad , time is besides once long, will produce large amount of document and data, with rega
9、rd to, this seeks , renews and defends the difficulty having brought about quite a few. Use a computer to carry out administration on student self's status as a student information but , have unable parallel handwork administration merit. For instance: The retrieval is prompt , seek to store res
10、erves conveniently, keeping secret greatly, nature is easy to wait. These merit is able to improve efficiency managed by student tremendously , is also school scientification , regularization administrative important approach. Keywords: student self's status as a student management system ,C # p
11、rogramming language一、 前 言(一 系統(tǒng)開發(fā)的背景、目的和意義1. 系統(tǒng)開發(fā)的背景長期以來,學(xué)校對學(xué)生學(xué)籍的管理都還使用著傳統(tǒng)的模式。在此模式下,人工的記錄學(xué)生信息、考試信息等等。而隨著現(xiàn)代素質(zhì)教育與時代的不斷發(fā)展這樣的模式已經(jīng)不能完全適應(yīng)現(xiàn)代的教育形勢。信息化時代的到來,使學(xué)校傳統(tǒng)的管理方法和辦學(xué)水平都受到了極大的挑戰(zhàn)。隨著Internet技術(shù)持續(xù)迅猛的發(fā)展,給傳統(tǒng)的辦學(xué)模式提出了新的要求。進入新世紀,從世界各國教育信息化的進程來看,不但競爭異常激烈,而且無論是在教育信息基礎(chǔ)設(shè)施和資源建設(shè)上,還是在普及的程度上,中國與西方發(fā)達國家甚至某些發(fā)展中國家相比,都存在著較大的差距
12、。新的世紀里,如果中國不能很好地利用互聯(lián)網(wǎng)的平臺和以較低的成本對推動教育信息化缺乏明確的方向,勢必偏離信息化的軌道,進而阻礙社會信息化的進程和整個國民經(jīng)濟的發(fā)展。因此,實施教育的信息化已經(jīng)刻不容緩、迫在眉睫,而其中的學(xué)生學(xué)籍管理是其中一個不可或缺的環(huán)節(jié)。較之傳統(tǒng)的管理方式,筆者開發(fā)的學(xué)生學(xué)籍管理系統(tǒng)的優(yōu)勢有:一方面可以實現(xiàn)數(shù)據(jù)共享,又能像使用單機系統(tǒng)一樣,進行便捷地各種數(shù)據(jù)添加、修改、刪除、查詢和統(tǒng)計等操作,并且具有相當(dāng)?shù)陌踩院涂煽啃浴?;另一方面,檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學(xué)生學(xué)籍管理的效率,也是學(xué)校的科學(xué)化、正規(guī)化管理,與社會
13、接軌的重要條件。2. 系統(tǒng)開發(fā)的目的和意義20世紀末,隨著我國計劃生育的不斷普及和深入,入校人數(shù)正逐步下降,而各個學(xué)校的規(guī)模卻在不斷擴大,校與校之間的合并規(guī)模也越來越大,而此時計算機在各學(xué)校也開始普及,一些學(xué)校開始將計算機應(yīng)用到學(xué)生信息的管理中去,為學(xué)生管理信息系統(tǒng)的形成打下了堅實的基礎(chǔ)。而此時的應(yīng)用計算機的功能還僅限于記錄學(xué)生的基本信息,以供需要時查詢,數(shù)據(jù)庫是比較流行的FoxPro。在新生入校時將學(xué)生的基本信息記錄輸入FoxPro,并集中報到教務(wù)處,以備查閱。在遇到榮譽稱號、違紀處分等學(xué)生管理工作時也是如此,所以計算機的功能僅僅是代替了手寫工作,并沒有發(fā)揮其在信息處理方面的優(yōu)點。但是,對于
14、學(xué)生管理工作來說,這已經(jīng)是一個質(zhì)的飛躍。由于將數(shù)據(jù)錄入FoxPro的工作是學(xué)校工作人員直接對FoxPro數(shù)據(jù)庫的操作,而隨著各學(xué)校的合并后的人數(shù)的變化導(dǎo)致了管理的復(fù)雜性,所以一些學(xué)校就自己開發(fā)了學(xué)生信息管理系統(tǒng),這就是最初的學(xué)生管理信息系統(tǒng)。這種初級的學(xué)生管理信息系統(tǒng)的主要功能是:為學(xué)校管理工作人員輸入大量數(shù)據(jù)提供一個操作簡單、使用方便的友好界面;在已有的數(shù)據(jù)中作簡單的查詢和統(tǒng)計。(二)系統(tǒng)開發(fā)的工具和環(huán)境Visual Studio 2010提供了一種面向?qū)ο蟮拈_發(fā)環(huán)境。C#吸收了C+、Visual Basic、Delphi、Java等語言的優(yōu)點,繼承了C語言的語法風(fēng)格,同時有繼承了C+的面向
15、對象的特性。Microsoft SQL Server是微軟公司于1997年開始推出的數(shù)據(jù)庫管理系統(tǒng)。它主要以NT Server為運作平臺。并以其強大、靈活、易于使用等優(yōu)點雄居業(yè)界前列。Microsoft SQL Server是作為一個組織內(nèi)部的全部數(shù)據(jù)的中心存儲來設(shè)計的數(shù)據(jù)庫系統(tǒng),是在成熟和強大的關(guān)系模型中建立的。它是客戶/服務(wù)器系統(tǒng)的一個完美的實例,它提供了安裝到服務(wù)器系統(tǒng)上的服務(wù)器軟件和一些安裝到客戶系統(tǒng)上的客戶軟件,并提供了一些應(yīng)用程序工具來進行數(shù)據(jù)庫的管理和訪問。選擇Microsoft IIS作為WWW服務(wù)器的一個原因是它支持與Microsoft SQL Server配合的很好。選擇I
16、IS的另一個主要原因是IIS3.0以上的版本都支持Microsoft的Active Server Pages(ASP)應(yīng)用程序環(huán)境。二 、 系統(tǒng)分析與設(shè)計(一 系統(tǒng)的需求分析和可行性分析1. 系統(tǒng)的需求分析學(xué)生學(xué)籍管理系統(tǒng)是基于學(xué)校的工作需求而設(shè)定,圍繞這一明確的工作需求,根據(jù)高校人員結(jié)構(gòu)分析,在項目開發(fā)前期的需求分析工程中,學(xué)生學(xué)籍管理系統(tǒng)的應(yīng)用應(yīng)包括系統(tǒng)設(shè)置、學(xué)生信息管理、學(xué)生成績管理以及系統(tǒng)說明等部分。系統(tǒng)應(yīng)具有學(xué)生學(xué)籍信息輸入、刪除和修改的功能,學(xué)生成績信息亦是如此。系統(tǒng)的查詢功能應(yīng)較為完備,不同的用戶將登錄到不同的主界面,進行不同的界面操作功能。能方便快捷地進行相應(yīng)數(shù)據(jù)的簡單查詢和任
17、意字段組合的復(fù)合查詢,改變以前只有專門人員才能進行數(shù)據(jù)查詢的情況。系統(tǒng)應(yīng)有學(xué)生數(shù)據(jù)安全保密措施,由于身份不同將登錄到不同的主界面,高級的用戶可以操作低級用戶的信息,而低級用戶之間互不能操作,保持了信息的安全性。但在需要時可由系統(tǒng)維護人員通過添加用戶并授權(quán)來設(shè)置相應(yīng)權(quán)限。在系統(tǒng)程序設(shè)計中應(yīng)充分利用數(shù)據(jù)庫服務(wù)器的處理能力,降低網(wǎng)絡(luò)通信量,盡可能減少數(shù)據(jù)修改沖突,以最大程度地提高系統(tǒng)的執(zhí)行速度和可靠性,真正起到提高工作效率的作用。2. 可行性分析系統(tǒng)可行性主要包括3個方面:技術(shù)上的可行性、經(jīng)濟上的可行性和管理上的可行性。a、系統(tǒng)在技術(shù)上無論是硬件性能要求(包括外圍設(shè)備),還是軟件性能要求(包括Win
18、2000操作系統(tǒng)、Winxp操作系統(tǒng)、Powerbuilder、SQL server,程序設(shè)計,軟件開發(fā)工具),均可行。b、從開發(fā)項目的成本與效益來看,系統(tǒng)開發(fā)的設(shè)備費用、運行費用、培訓(xùn)費用并不大,而通過系統(tǒng)的實施,一方面,提高了工作效率,將帶來更多的經(jīng)濟效益;另一方面,系統(tǒng)所產(chǎn)生的間接效益也不容忽視。工作效率的提高可以節(jié)省人力資源,減輕了有關(guān)業(yè)務(wù)人員手工處理的工作負擔(dān),及時提供決策信息,促進業(yè)務(wù)的規(guī)范化、系統(tǒng)化、條理化和程序化。c、科學(xué)的管理是建立管理信息系統(tǒng)的前提。管理人員支持本系統(tǒng)的研發(fā)運行,相應(yīng)的管理制度改革的時機已經(jīng)成熟,規(guī)章制度已經(jīng)齊全,原始數(shù)據(jù)正確。隨著時代的發(fā)展,人員素質(zhì)已經(jīng)逐
19、步提高,不論是對于電腦系統(tǒng)的基本操作還是對于系統(tǒng)的維護都有了一定的基礎(chǔ)。同時還可以配置專業(yè)的電腦維護人員來維護電腦,不必擔(dān)心電腦故障問題。(二 學(xué)籍管理需求分析1系統(tǒng)登錄學(xué)籍管理系統(tǒng)系統(tǒng)登錄模塊,面對的用戶是系統(tǒng)管理員、教師以及學(xué)生。主要功能是:(1)系統(tǒng)分三種登錄模式,各模式登錄成功后將進入不同的主界面。(2)教師登錄需使用教師姓名和教師的工號,學(xué)生登錄需使用學(xué)生姓名和學(xué)號。2.信息管理學(xué)籍管理系統(tǒng)信息管理模塊,主要面對的用戶是學(xué)校的管理人員。其主要職責(zé):(1)學(xué)生信息的錄入。學(xué)生在入校后,學(xué)校將為每一位學(xué)生分配一個學(xué)號,根據(jù)學(xué)生所屬系部,所選專業(yè)給學(xué)生分配班級,學(xué)校將根據(jù)學(xué)生的學(xué)號和姓名將
20、學(xué)生的所有信息錄入學(xué)生學(xué)籍管理系統(tǒng),以便對學(xué)生進行統(tǒng)一管理。(2)學(xué)生信息的查詢。系統(tǒng)管理員、教師以及學(xué)生本人都可以進行信息查詢,獲取學(xué)生信息;對于學(xué)生而言,學(xué)生需提供學(xué)號和姓名進行查詢,目的是為了避免除學(xué)生本身以外的其他學(xué)生盜取信息,進行非法行為。(3)學(xué)生信息的修改。此模塊只有系統(tǒng)管理員和教師可以操作,學(xué)生沒有權(quán)限。3.成績管理學(xué)籍管理系統(tǒng)成績管理模塊,主要面對的用戶是系統(tǒng)管理員和教師,學(xué)生只有查詢信息的功能。其主要職責(zé)是:(1)成績錄入。每個學(xué)生在考試后都有一個成績,教師根據(jù)每個人的考試結(jié)果,將成績錄入成績管理中,以便學(xué)生查詢和期末匯總。(2)成績查詢。管理員、教師和學(xué)生都可以通過此模塊
21、查詢成績,教師可以查詢整個班級的學(xué)生成績,但學(xué)生只能查詢自己的成績。(3)成績修改。如有學(xué)生成績錄入出錯時,教師可找到學(xué)生成績信息,并進行修改。4.系統(tǒng)說明學(xué)籍管理系統(tǒng)系統(tǒng)說明模塊,主要對本系統(tǒng)進行說明,方便用戶操作使用。5.注銷管理學(xué)籍管理系統(tǒng)注銷管理模塊,主要功能是:(1)注銷用戶。用戶需要更換登陸用戶時,可通過注銷,重新從登陸界面登陸到系統(tǒng)。(2)關(guān)閉。退出整個應(yīng)用系統(tǒng)。三、數(shù)據(jù)庫設(shè)計(一 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計室在需求分析的基礎(chǔ)上,設(shè)計出能夠滿足用戶需求的各種實體,以及他們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計打下基礎(chǔ)。這個階段不用考慮所采用的數(shù)據(jù)庫管理系統(tǒng)、操作系統(tǒng)類型、機器
22、類型等問題。這階段可用的工具很多。用的最多的是E-R圖(Entity-Relation,實體關(guān)系圖),另外還有許多計算機輔助工具可以幫助進行設(shè)計。本系統(tǒng)采用了E-R圖的方法進行數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計。E-R圖是描述數(shù)據(jù)庫實體關(guān)系的一種直觀工具。這種圖中有:實體。用方框表示。方框內(nèi)為實體的名稱。實體的各種屬性。用橢圓表示,橢圓內(nèi)為屬性名稱。使用線段將其和相應(yīng)的實體連接起來。實體之間的關(guān)系。用菱形表示,菱形內(nèi)為聯(lián)系的名稱。實體和實體之間的聯(lián)系較多,比較常見的聯(lián)系有1:1,1:N和M:N這三種。根據(jù)對人事管理信息系統(tǒng)情況的掌握,繪制了相應(yīng)的E-R圖。由于數(shù)據(jù)庫中的信息太多,只取部分示例:用戶名問題答案登
23、錄編號管理員1、 管理員登錄信息表答案問題用戶名登錄編號教師2、 教師登錄信息表答案問題用戶名登錄學(xué)號學(xué)生3、 學(xué)生登錄信息表出生性別姓名籍貫班級編號學(xué)號學(xué)生信息4、 學(xué)生信息表班級名稱班級編號專業(yè)編號班級信息5、 班級信息表專業(yè)編號系部編號專業(yè)名稱專業(yè)信息6、 專業(yè)信息表系部編號系部名稱系部信息7、 系部信息表專業(yè)編號課程編號課程名稱學(xué)分學(xué)時課程類別課程信息8、 課程信息表學(xué)號課程編號考試成績作業(yè)成績平時成績課程信息最后得分9、 成績信息表(二 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)是獨立于實際數(shù)據(jù)模型的信息結(jié)構(gòu),必須將其轉(zhuǎn)化為邏輯結(jié)構(gòu)后才能進行數(shù)據(jù)庫應(yīng)用設(shè)計。也就是要將概念上的結(jié)構(gòu)轉(zhuǎn)化為數(shù)據(jù)庫系統(tǒng)所支
24、持的實際數(shù)據(jù)模型。第一種轉(zhuǎn)化是將實體轉(zhuǎn)化為關(guān)系表。這種轉(zhuǎn)化較簡單,需要將實體的屬性定義為表的屬性即可。第二種轉(zhuǎn)化時聯(lián)系的轉(zhuǎn)化。即將各個實體之間的聯(lián)系轉(zhuǎn)化為表格之間的關(guān)系,如外部鍵的定義。在系統(tǒng)分析及數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計的基礎(chǔ)上,將系統(tǒng)E-R圖轉(zhuǎn)換成關(guān)系模型的邏輯結(jié)構(gòu),并根據(jù)選用的數(shù)據(jù)庫管理系統(tǒng)SQL Server作了適當(dāng)?shù)男薷模瑫r考慮到學(xué)生學(xué)籍管理系統(tǒng)的實際情況,在上面工作的基礎(chǔ)上歸納出學(xué)籍管理數(shù)據(jù)庫表格的組成、列的屬性、表格之間的聯(lián)系等待,得到了如下的關(guān)系數(shù)據(jù)庫表。同時該數(shù)據(jù)庫系統(tǒng)具有以下方面的特點:結(jié)構(gòu)合理,對一個學(xué)生建立多條記錄。所建立的數(shù)據(jù)冗余度小,獨立性強。建檔、修改、查詢、統(tǒng)計快而
25、準(zhǔn)確。保密性好、可靠性好。(1)管理員登錄信息表,表名為T_Administrator_user,主鍵為Num。字段名 字段類型 能否為空 含義Id int not null 編號Num char(9 not null 管理員工號Name nvarchar(50 not null 管理員名稱Question nvarchar(50 null 問題Answer nvarchar(50 null 答案(2)學(xué)生登錄信息表,表名為T_Student_user,主鍵為Num。字段名 字段類型 能否為空 含義Id int not null 編號Num char(9 not null 學(xué)號Name nva
26、rchar(50 not null 學(xué)生姓名Question nvarchar(50 null 問題Answer nvarchar(50 null 答案(3)教師登錄信息表,表名為T_Teacher_user,主鍵為Num。字段名 字段類型 能否為空 含義Id int not null 編號Num char(9 not null 教師工號Name nvarchar(50 not null 教師姓名Question nvarchar(50 null 問題Answer nvarchar(50 null 答案(4)學(xué)生信息表,表名為T_Student,主鍵為Num。字段名 字段類型 能否為空 含義N
27、um char(9 not null 學(xué)號Name nvarchar(8 not null 姓名Sex nchar(2 null 性別Birthday smalldatetime null 出生Address nvarchar(100 null 籍貫 classID char(10) null 班級編號 (5)班級信息表,表名為T_Class,主鍵為classID。字段名 字段類型 能否為空 含義classID char(10 not null 班級編號className nvarchar(50 null 班級名稱majorID char(10 null 專業(yè)編號(6)專業(yè)信息表,表名為T_M
28、ajor,主鍵為majorID。字段名 字段類型 能否為空 含義majorID char(10 not null 專業(yè)編號majorName nvarchar(50 null 專業(yè)名稱departmentID char(10 null 系部編號(7)系部信息表,表名為T_Department,主鍵為departmentID。字段名 字段類型 能否為空 含義departmentID char(10 not null 系部編號departmentName nvarchar(50 null 系部名稱(8)課程信息表,表名為T_Course,主鍵為CourseID。字段名 字段類型 能否為空 含義Co
29、urseID char(5 not null 課程編號CourseName nvarchar(50 not null 課程名稱Category char(10 null 課程類別Period smallint null 學(xué)時Credit tinyint null 學(xué)分majorID nchar(10 null 專業(yè)編號(9)成績信息表,表名為T_Grade,主鍵為Num和CourseID。字段名 字段類型 能否為空 含義Num char(10 not null 學(xué)號CourseID char(5 not null 課程編號DailyGrade decimal(5, 1 null 平時成績Pra
30、cticeGrade decimal(5, 1 null 作業(yè)成績TestGrade decimal(5, 1 null 考試成績Grade decimal(5, 1 null 最終得分上述9表是學(xué)生學(xué)籍管理系統(tǒng)中比較重要的,在建立該數(shù)據(jù)庫表時要考慮以下幾方面的特點:(1)結(jié)構(gòu)合理,對一個人員建立多條記錄。所建立的數(shù)據(jù)冗余度小,獨立性強。(2)建檔、修改、查詢、統(tǒng)計快而準(zhǔn)確。保密性好、可靠性好。 四、系統(tǒng)設(shè)計(一 登錄窗口的設(shè)計登錄窗口放置了三個label、兩個TextBox、一個ComboBox和兩個Button,其中TextBox是用來接收用戶鍵入的用戶名和密碼,ComboBox是用來選擇
31、登錄身份,通過按鈕“登陸”執(zhí)行代碼,通過查詢后臺數(shù)據(jù)庫信息,查出是否有此用戶,從而決定用戶是否被允許進入主系統(tǒng),通過按鈕“退出”執(zhí)行代碼退出真?zhèn)€系統(tǒng)。如圖:管理員登錄賬戶和密碼都是admin,教師登錄賬戶和密碼都是teacher。實現(xiàn)代碼如下:public static string Num;public static string Person;private void btnLogin_Click(object sender, EventArgs estring sql=""switch (cbPerson.SelectedIndexcase 0: Person = c
32、bPerson.Text; 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
33、T_Student_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"AdminTeacherMan
34、agementSystem atms = new AdminTeacherManagementSystem(;atms.Show(;if (Person = "Student"StudentManagementSystem x = new StudentManagementSystem(;x.Show(;elseMessageBox.Show("用戶名錯誤,請重新輸入!"elseMessageBox.Show("對不起,用戶不存在!"return;private void btnExit_Click(object sender, Ev
35、entArgs eApplication.Exit(;/注冊private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs eAddUser Add = new AddUser(;Add.Show(;(二 建立應(yīng)用程序主窗口本系統(tǒng)的主窗口如圖:系統(tǒng)主界面(三菜單的設(shè)計系統(tǒng)設(shè)置面刪除用戶添加用戶信息管理信息錄入信息查詢成績查詢成績錄入成績管理成績修改信息修改關(guān)閉注銷注銷系統(tǒng)說明(四 刪除用戶界面的設(shè)計刪除用戶窗口界面如圖:頁面加載時,通過訪問數(shù)據(jù)庫,加載學(xué)生姓名信息并綁定到學(xué)生姓名;由于考慮重名的問
36、題,可通過姓名查詢學(xué)生的學(xué)號,再根據(jù)學(xué)號查尋具體學(xué)生的信息;通過刪除按鈕,用戶可刪除當(dāng)前用戶的信息。實現(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 = dataOperate.getDataSet(sql,"T_Department&
37、quot;cbDepartment.DataSource = ds1.Tables0;cbDepartment.DisplayMember = "departmentName"private void btnLeftAll_Click(object sender, EventArgs ethis.BindingContextds, "T_Student".Position = 0;btnLeftAll.Enabled = false;btnLeft.Enabled = false;btnRight.Enabled = true;btnRightAll.E
38、nabled = true;private void btnLeft_Click(object sender, EventArgs eif (this.BindingContextds, "T_Student".Position > 0this.BindingContextds, "T_Student".Position-;if (this.BindingContextds, "T_Student".Position = 0btnLeftAll.Enabled = false;btnLeft.Enabled = false;bt
39、nRight.Enabled = true;btnRightAll.Enabled = true;private void btnRight_Click(object sender, EventArgs eif (this.BindingContextds, "T_Student".Position < this.BindingContextds, "T_Student".Count - 1this.BindingContextds, "T_Student".Position+;if (this.BindingContextds
40、, "T_Student".Position = this.BindingContextds, "T_Student".Count - 1btnRight.Enabled = false;btnRightAll.Enabled = false;btnLeft.Enabled = true;btnLeftAll.Enabled = true;private void btnRightAll_Click(object sender, EventArgs ethis.BindingContextds, "T_Student".Positio
41、n = 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/刪除學(xué)生賬戶信息int i= this.BindingContextds, "T_Student".Position;string Num = d
42、s.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 = "delete from T_Student where Num='"+Num+"'"bool flag1 = dataOpera
43、te.execSQL(sql;if (flag1MessageBox.Show("刪除成功!"getInfo(;elseMessageBox.Show("刪除用戶信息失??!"return;/int rowID = this.BindingContextds, "T_Student".Position;/ds.Tables"T_Student".RowsrowID.Delete(;/sdapt.Update(ds, "T_Student"/this.BindingContextds, "
44、T_Student".Position = 0;/btnLeft.Enabled = false;/btnLeftAll.Enabled = false;/btnRight.Enabled = true;/btnRightAll.Enabled = true;elseMessageBox.Show("刪除用戶賬戶失敗!"return;private void btnClose_Click(object sender, EventArgs ethis.Close(;private void cbDepartment_SelectedIndexChanged(obje
45、ct sender, EventArgs estring sql = "select mr.majorName from T_Major as mr,T_Department as dt where dt.departmentName='" + cbDepartment.Text + "' and mr.departmentID=dt.departmentID"ds1 = dataOperate.getDataSet(sql, "T_Major"cbMajor.DataSource = ds1.Tables0;cbMa
46、jor.DisplayMember = "majorName"private void cbMajor_SelectedIndexChanged(object sender, EventArgs estring sql = "select cs.className from T_Class as cs,T_Major as mr where mr.majorName='" + cbMajor.Text + "' and cs.majorID=mr.majorID"ds1 = dataOperate.getDataSet
47、(sql, "T_Class"cbClass.DataSource = ds1.Tables0;cbClass.DisplayMember = "className"private void cbClass_SelectedIndexChanged(object sender, EventArgs egetInfo(;public void getInfo(con = dataOperate.createConnection(;con.Open(;string sql = "select st.Num as '學(xué)號',st.Na
48、me as '姓名',st.Sex as '性別',st.Birthday as '出生',st.Address as '籍貫' from T_Student as st,T_Class as cs where cs.className='" + cbClass.Text + "' and st.classID=cs.classID"sdapt = new SqlDataAdapter(sql, con;ds = new DataSet(;sdapt.Fill(ds, "T_
49、Student"dataGridView1.DataSource = ds;dataGridView1.DataMember = "T_Student"dataGridView1.ReadOnly = true;(五 學(xué)生信息錄入界面設(shè)計其窗口界面如下圖:這里只能對學(xué)生進行添加,即身份只能選擇Student。實現(xiàn)代碼如下:private static string sql = ""public static string Num = ""public static string Name = ""priv
50、ate void cbShenFen_SelectedIndexChanged(object sender, EventArgs eNum = txtNum.Text;Name = txtUserName.Text;switch (cbShenFen.SelectedIndexcase 0: sql = "select * from T_Administrator_user where Num='" + Num + "'" break;case 1: sql = "select * from T_Teacher_user whe
51、re Num='" + Num + "'" break;case 2: sql = "select * from T_Student_user where Num='" + Num + "'" break;bool flag = dataOperate.seleSQL(sql;if (flagMessageBox.Show("對不起,此用戶已經(jīng)存在!"return;private void btnOk_Click(object sender, EventArgs e/判斷用
52、戶名是否已經(jīng)存在bool flag = dataOperate.seleSQL(sql;if (flagMessageBox.Show("對不起,此用戶已經(jīng)存在!"return;/如果前兩次都沒有錯誤,就將新用戶信息寫入數(shù)據(jù)庫switch (cbShenFen.SelectedIndexcase 0: sql = "insert into T_Administrator_user values('" + txtNum.Text + "','" + txtUserName.Text + "',&
53、#39;" + txtQuestion.Text + "','" + txtAnswer.Text + "'" break;case 1: sql = "insert into T_Teacher_user values('" + txtNum.Text + "','" + txtUserName.Text + "','" + txtQuestion.Text + "','" + txt
54、Answer.Text + "'" break;case 2: sql = "insert into T_Student_user values('" + txtNum.Text + "','" + txtUserName.Text + "','" + txtQuestion.Text + "','" + txtAnswer.Text + "'" break;flag = dataOperate.exec
55、SQL(sql;if (flagMessageBox.Show("注冊/添加用戶成功!"if (cbShenFen.SelectedIndex=2InsertInfo II = new InsertInfo(;II.Show(;this.Close(;elseMessageBox.Show("注冊/添加用戶失敗!"private void btnReset_Click(object sender, EventArgs etxtNum.Text = ""txtNum.Focus(;txtUserName.Text = "&qu
56、ot;txtQuestion.Text = ""txtAnswer.Text = ""private void AddUser_Load(object sender, EventArgs etxtNum.Focus(;添加詳細信息當(dāng)點擊信息錄入界面或添加用戶時,系統(tǒng)自動轉(zhuǎn)入添加用戶界面,當(dāng)添加用戶成功后,繼而進入學(xué)生詳細信息添加界面,完成學(xué)生用戶以及詳細信息的添加。實現(xiàn)代碼如下:private void InsertInfo_Load(object sender, EventArgs etxtNum.Text = AddUser.Num;txtName.
57、Text = AddUser.Name;string sql = "select * from T_Department"DataSet ds = dataOperate.getDataSet(sql, "T_Department"cbDepartment.DataSource = ds.Tables"T_Department"cbDepartment.DisplayMember = "departmentName"private void cbDepartment_SelectedIndexChanged(obj
58、ect sender, EventArgs e/根據(jù)系部名稱查詢系部編號string sql = "select departmentID from T_Department where departmentName='"+cbDepartment.Text+"'"SqlDataReader sdr = dataOperate.getRow(sql;if (sdr.Read(string departmentID=sdr"departmentID".ToString(;/根據(jù)系部編號查詢專業(yè)信息sql = "
59、select * from T_Major where departmentID='" + departmentID + "'"DataSet ds = dataOperate.getDataSet(sql, "T_Major"cbMajor.DataSource = ds.Tables"T_Major"cbMajor.DisplayMember = "majorName"private void cbMajor_SelectedIndexChanged(object sender, Ev
60、entArgs e/根據(jù)專業(yè)名稱查詢專業(yè)編號string sql = "select majorID from T_Major where majorName='" + cbMajor.Text + "'"SqlDataReader sdr = dataOperate.getRow(sql;if (sdr.Read(string majorID=sdr"majorID".ToString(;/根據(jù)專業(yè)編號查詢班級信息sql = "select * from T_Class where majorID='" + majorID + "'"DataSet ds = dataOperate.getDataSet(sql, "T_Class"cbClass.DataSource = ds.Tables"T
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 井控復(fù)習(xí)測試卷
- SQL數(shù)據(jù)庫復(fù)習(xí)試題
- 大寒節(jié)氣與古農(nóng)業(yè)
- 土地出租合同范本模板
- 商場攤位租金合同范本
- 合伙開采玉礦合同范本
- 加工鑄造用工合同范本
- 吊籃安拆合同范本
- 傳媒助力校園綠化
- 醫(yī)療設(shè)備推廣合同范本
- 2023年10月自考試題00840第二外語(日語)
- 農(nóng)產(chǎn)品市場營銷中的市場競爭分析
- 了解滑雪:滑雪器材與滑雪的技巧
- 報價單模板完
- 【某醫(yī)療美容機構(gòu)營銷策略現(xiàn)狀、問題及優(yōu)化建議分析6300字】
- 關(guān)于外委單位工作情況的報告
- PIVAS靜配中心清潔消毒規(guī)范
- 現(xiàn)場問題整改清單匯總
- 第三章交強險課件
- 項目后評價表格(全過程咨詢)
- 公務(wù)員面試真題之材料題有解析有材料
評論
0/150
提交評論