版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 畢 業(yè) 設(shè) 計(jì)</p><p> 姓 名: XXXX </p><p> 班 級(jí): 08級(jí)軟件技術(shù)(2)班 </p><p> 設(shè)計(jì)題目: 寢室管理系統(tǒng) </p><p> 指導(dǎo)教師: XXXX </p><
2、;p><b> 二○一○年十一月</b></p><p><b> 目錄</b></p><p><b> 目錄2</b></p><p><b> 引 言3</b></p><p><b> 摘 要4</b&
3、gt;</p><p> 第一章 需求分析5</p><p><b> 1.1功能需求5</b></p><p> 1.1.1 基本功能需求5</p><p> 1.1.2 用戶界面需求5</p><p><b> 1.2性能需求6</b></p&
4、gt;<p> 1.2.1系統(tǒng)安全性6</p><p> 第二章 宿舍管理系統(tǒng)詳細(xì)設(shè)計(jì)7</p><p> 2.1系統(tǒng)功能模塊圖7</p><p> 2.2數(shù)據(jù)庫設(shè)計(jì)8</p><p> 第三章 創(chuàng)建數(shù)據(jù)庫12</p><p> 3.1數(shù)據(jù)庫的創(chuàng)建:12</p>&l
5、t;p> 3.1.1數(shù)據(jù)庫的創(chuàng)建:12</p><p> 3.1.1 表的創(chuàng)建:13</p><p> 3.2數(shù)據(jù)庫關(guān)系圖14</p><p> 第四章 界面設(shè)計(jì)和代碼實(shí)現(xiàn)15</p><p> 4.1 登陸界面15</p><p> 4.2 主界面設(shè)計(jì)16</p><
6、;p> 4.3 主界面功能實(shí)現(xiàn)17</p><p> 4.3.1 管理員修改密碼17</p><p> 4.3.2 添加管理員19</p><p> 4.3.3 顯示管理員20</p><p> 第五章 軟件測(cè)試27</p><p><b> 結(jié) 論28</b>
7、</p><p><b> 致 謝29</b></p><p><b> 參考文獻(xiàn)30</b></p><p><b> 引 言</b></p><p> 寢室管理系統(tǒng)對(duì)于一個(gè)學(xué)校來說是必不可少的組成部分。目前好多學(xué)校還停留在寢室管理人員手工記錄數(shù)據(jù)的最初階
8、段,手工記錄對(duì)于規(guī)模小的學(xué)校來說還勉強(qiáng)可以接受,但對(duì)于學(xué)生信息量比較龐大,需要記錄存檔的數(shù)據(jù)比較多的高校來說,人工記錄是相當(dāng)麻煩的。而且當(dāng)查找某條記錄時(shí),由于數(shù)據(jù)量龐大,還只能靠人工去一條條的查找,這樣不但麻煩還浪費(fèi)了許多時(shí)間,效率也比較低。當(dāng)今社會(huì)是飛速進(jìn)步的世界,原始的記錄方式已經(jīng)被社會(huì)所淘汰了,計(jì)算機(jī)化管理正是適應(yīng)時(shí)代的產(chǎn)物。信息世界永遠(yuǎn)不會(huì)是一個(gè)平靜的世界,當(dāng)一種技術(shù)不能滿足需求時(shí),就會(huì)有新的技術(shù)誕生并取代舊技術(shù)。</p&
9、gt;<p> 21世紀(jì)的今天,信息社會(huì)占著主流地位,計(jì)算機(jī)在各行各業(yè)中的運(yùn)用已經(jīng)得到普及,自動(dòng)化、信息化的管理越來越廣泛應(yīng)用于各個(gè)領(lǐng)域。我們針對(duì)如此,設(shè)計(jì)了一套學(xué)生寢室管理系統(tǒng)。學(xué)生寢室管理系統(tǒng)采用的是計(jì)算機(jī)化管理,系統(tǒng)做的盡量人性化,使用者會(huì)感到操作非常方便,管理人員需要做的就是將數(shù)據(jù)輸入到系統(tǒng)的數(shù)據(jù)庫中去。由于數(shù)據(jù)庫存儲(chǔ)容量相當(dāng)大,而且比較穩(wěn)定,適合較長(zhǎng)時(shí)間的保存,也不容易丟失。這無疑是為信息存儲(chǔ)量比較大的學(xué)校提供
10、了一個(gè)方便、快捷的操作方式。本系統(tǒng)具有運(yùn)行速度快、安全性高、穩(wěn)定性好的優(yōu)點(diǎn),并且具備修改功能,能夠快速的查詢學(xué)校所需的住宿信息。</p><p><b> 摘 要</b></p><p> 高校學(xué)生宿舍管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),我們使用微軟公司辦公軟件SQL Server 2005,是一個(gè)關(guān)系管理數(shù)據(jù)庫管理系統(tǒng),而且是一個(gè)面向?qū)ο蟮?、采用事件?qū)動(dòng)
11、機(jī)制的新型關(guān)系數(shù)據(jù)庫管理系統(tǒng)。使用SQL Server 2005時(shí),用戶可以不需編寫任何代碼,僅通過簡(jiǎn)單直觀的可視化操作,就可以創(chuàng)建數(shù)據(jù)庫和完成大部分?jǐn)?shù)據(jù)庫管理任務(wù),也可以編寫代碼實(shí)現(xiàn)建立數(shù)據(jù)庫和數(shù)據(jù)表及對(duì)數(shù)據(jù)庫的管理。舊的手工紀(jì)錄的宿舍管理方式已經(jīng)不能適應(yīng)高速發(fā)展的信息化時(shí)代,新的宿舍管理系統(tǒng)開發(fā)出來之后,學(xué)校的現(xiàn)有的宿舍信息管理將有很大的改觀,由過去的人工方式轉(zhuǎn)變?yōu)橛?jì)算機(jī)方式,由效率低、數(shù)據(jù)冗余、易產(chǎn)生錯(cuò)誤轉(zhuǎn)變?yōu)闄z索迅速、查找方便、
12、可靠性高、存儲(chǔ)量大。這些優(yōu)點(diǎn)能夠極大地提高效率,也是學(xué)校科學(xué)化、正規(guī)化管理的重要條件。</p><p> 論文關(guān)鍵詞: 宿舍管理系統(tǒng) 數(shù)據(jù)庫 (DBMS)</p><p><b> 第一章 需求分析</b></p><p> 目前,我們學(xué)校的宿舍管理采用的還是人工來進(jìn)行管理的, 面對(duì)目前學(xué)校發(fā)展的實(shí)際狀況,我們通過實(shí)地調(diào)研之后,對(duì)宿舍管
13、理系統(tǒng)的設(shè)計(jì)開發(fā)做了一個(gè)詳細(xì)的概述。</p><p><b> 1.1功能需求 </b></p><p> 1.1.1 基本功能需求 </p><p> 本系統(tǒng)主要要實(shí)現(xiàn)的是寢室管理系統(tǒng),在設(shè)計(jì)時(shí)要盡可能貼近寢室問題,方便用戶操作。具體基本功能如下:</p><p> 1.系統(tǒng)要求用戶必須輸入正確的用戶名和密碼才
14、能進(jìn)入系統(tǒng)。</p><p> 2.系統(tǒng)應(yīng)該提供添加用戶和用戶的修改,刪除和查詢功能。</p><p> 3.系統(tǒng)應(yīng)提供學(xué)生入住寢室的功能和查詢,修改和刪除功能。</p><p> 4.系統(tǒng)應(yīng)提供人員來訪登記及時(shí)間登記,條件查詢,刪除。</p><p> 5.系統(tǒng)應(yīng)提供寢室里學(xué)生夜不歸宿的登記,條件查詢,修改,刪除。</p>
15、;<p> 6.系統(tǒng)應(yīng)提供寢室衛(wèi)生登記,條件查詢,修改,刪除。</p><p> 7.系統(tǒng)應(yīng)提供寢室問題登記,查詢,刪除等。</p><p> 8.在添加用戶時(shí)應(yīng)提供是否存在此用戶,不存在則添加,否則不予添加。</p><p> 1.1.2 用戶界面需求 </p><p> 學(xué)生宿舍管理系統(tǒng)應(yīng)提供簡(jiǎn)單、層次關(guān)系明了、清
16、晰的操作界面,使用戶一目了然。盡可能的為用戶的錄入、查詢等功能操作提供方便,盡可能減少用戶輸入。最好能讓用戶不用看系統(tǒng)說明就能很好的使用本系統(tǒng)。</p><p> 1.2性能需求 </p><p> 1.2.1系統(tǒng)安全性</p><p> 寢室管理系統(tǒng)中的增加用戶、學(xué)生學(xué)期注冊(cè)(交住宿費(fèi)方能注冊(cè))、學(xué)生畢業(yè)離校等的某些模塊都是和學(xué)生住宿
17、費(fèi)相聯(lián)系在一起的,只有每年度的住宿費(fèi)用交納完畢才準(zhǔn)許該生離校,所以在系統(tǒng)的管理權(quán)限上應(yīng)當(dāng)進(jìn)行嚴(yán)格控制,具體思想如下:</p><p> 1.要想對(duì)該學(xué)生宿舍管理系統(tǒng)進(jìn)行操作就應(yīng)當(dāng)具有某些操作權(quán)限。沒有權(quán)限的用戶將不能通過任何渠道來登錄該系統(tǒng),查看該系統(tǒng)的任何信息和數(shù)據(jù),以確保系統(tǒng)的嚴(yán)密性和安全性。</p><p> 2.在添加管理員時(shí)要保證用戶名不能重復(fù),只有正確輸入用戶和密碼才能進(jìn)入
18、本系統(tǒng)。沒有管理員用戶和密碼的不能進(jìn)入本系統(tǒng)。</p><p> 3.在添加信息時(shí)要提示一些必須填寫的數(shù)據(jù)必須填,否則不予添加。</p><p> 4.退出系統(tǒng)應(yīng)該是安全退出,不出現(xiàn)任何意外。</p><p> 5.確保再對(duì)數(shù)據(jù)進(jìn)行操作時(shí)不會(huì)出息任何錯(cuò)誤。</p><p> 第二章 宿舍管理系統(tǒng)詳細(xì)設(shè)計(jì) </p><
19、;p> 2.1系統(tǒng)功能模塊圖 </p><p> 圖2.1 系統(tǒng)功能模塊UML用例圖</p><p> 系統(tǒng)功能模塊中,主要有四大功能。管理員登陸,管理員管理,學(xué)生管理,寢室管理 。每個(gè)模塊都實(shí)現(xiàn)不同的功能,下面將分別介紹。</p><p> 管理員登陸:登陸后方進(jìn)行操作。只有正確的用戶名和密碼才能進(jìn)去。</p><p&
20、gt; 管理員管理:管理員的添加,修改,刪除,查看。</p><p> 學(xué)生管理:學(xué)生入住寢室,入住查詢,修改,刪除。</p><p> 寢室管理:寢室管理又分為四個(gè)主要模塊。分別是寢室衛(wèi)生管理,寢室夜不歸宿管理,寢室來訪人管理,寢室問題管管理。這些模塊的功能有:</p><p> 寢室衛(wèi)生管理:寢室衛(wèi)生查分的登記,寢室衛(wèi)生條件查詢,刪除和修改等。</
21、p><p> 寢室夜不歸宿管理:夜不歸宿學(xué)生登記,查詢,修改,刪除。</p><p> 寢室來訪人管理:來訪人的信息登記,查看,修改,刪除。</p><p> 寢室問題管理:?jiǎn)栴}登記,查詢,刪除。</p><p><b> 2.2數(shù)據(jù)庫設(shè)計(jì) </b></p><p> 數(shù)據(jù)庫中應(yīng)該有管理員表
22、,寢室表,寢室樓表,學(xué)生表,系表,專業(yè)表,學(xué)生入住寢室表,夜不歸宿表,寢室衛(wèi)生表,來訪人表,寢室問題登記表,寢室物品表。每個(gè)表的字段在下面將詳細(xì)介紹。</p><p> 管理員表(admin)</p><p><b> 宿舍樓表</b></p><p><b> 宿舍表</b></p><p>
23、;<b> 學(xué)生表</b></p><p><b> 寢室物品表</b></p><p><b> 寢室用電表</b></p><p><b> 寢室夜不歸宿表</b></p><p><b> 寢室問題登記表 </b>&l
24、t;/p><p><b> 6S表</b></p><p><b> 來訪人員表</b></p><p><b> 入住信息表</b></p><p><b> 系別表</b></p><p><b> 專業(yè)表<
25、;/b></p><p><b> 2.3邏輯設(shè)計(jì)</b></p><p> 打開本系統(tǒng)時(shí)首先要管理員登錄才能進(jìn)入,否則不予進(jìn)入。登錄成功后方可對(duì)學(xué)生和寢室管理,也可以修改自己的密碼。然后才對(duì)信息進(jìn)行操作。在管理員里有個(gè)超級(jí)管理員,其他的都是普通管理員,超級(jí)管理員可以對(duì)管理員進(jìn)行添加修改和刪除,其他的用戶只可以對(duì)自己的秘密進(jìn)行修,和添加管理員。每個(gè)數(shù)據(jù)表間有
26、關(guān)系。數(shù)據(jù)庫中管理員表是獨(dú)立存在的,寢室表,寢室樓表,學(xué)生入住寢室表,夜不歸宿表,寢室衛(wèi)生表,來訪人表,寢室問題登記表,寢室物品表都是圍繞寢室表,以寢室表中的寢室號(hào)為中心的。學(xué)生表和學(xué)生入住表有聯(lián)系,學(xué)生表還和專業(yè)表有聯(lián)系,專業(yè)表和系別表有關(guān)系。在查詢的時(shí)候提供條件查詢,讓用戶能很好的操作。為了以防數(shù)據(jù)庫出錯(cuò),大多數(shù)字段都是varchar類型的。</p><p><b> 第三章 創(chuàng)建數(shù)據(jù)庫</
27、b></p><p> 3.1數(shù)據(jù)庫的創(chuàng)建:</p><p> 創(chuàng)建數(shù)據(jù)庫及數(shù)據(jù)表,我們采用SQL Server 2005 創(chuàng)建,使用代碼創(chuàng)建。</p><p> 3.1.1數(shù)據(jù)庫的創(chuàng)建:</p><p> create database hostel</p><p> on primary</p
28、><p><b> (</b></p><p> name=hostel,</p><p> filename='E:\Study\畢業(yè)設(shè)計(jì)\hostel.mdf',</p><p><b> size=10,</b></p><p> maxsize=
29、50,</p><p> filegrowth=10%</p><p><b> )</b></p><p><b> log on</b></p><p><b> (</b></p><p> name=hostel_log,</p&
30、gt;<p> filename='E:\Study\畢業(yè)設(shè)計(jì)\hostel_log.ldf',</p><p><b> size=10,</b></p><p> maxsize=50,</p><p> filegrowth=10%</p><p><b> )&l
31、t;/b></p><p><b> go</b></p><p> use hostel</p><p><b> go</b></p><p> 3.1.1 表的創(chuàng)建:</p><p> 1.管理員表
32、 </p><p> create table [Admin](</p><p> id int identity not null primary key,</p><p> name varchar(20) not null,</p><p> password varchar(20) not null&l
33、t;/p><p><b> )</b></p><p><b> 2.寢室表</b></p><p> create table [bedroom](</p><p> bedroomID int not null primary key,</p><p> floor
34、ID int not null,</p><p> price money not null ,</p><p> remark varchar(200)</p><p><b> )</b></p><p><b> 3.學(xué)生表</b></p><p> crea
35、te table[student](</p><p> stuname varchar(50) not null,</p><p> stuid varchar(50) not null primary key,</p><p> birthday datetime,</p><p> checkschuool datetime,&l
36、t;/p><p> sex nchar(2) check(sex='男'or sex='女'),</p><p> teleph varchar(50) null,</p><p> department varchar(50) not null,</p><p> specialty varchar(50
37、) not null,</p><p> coach varchar(50) not null,</p><p> remark varchar(200)</p><p><b> )</b></p><p><b> 4.寢室夜不歸宿表</b></p><p>
38、create table[night](</p><p> floorID int not null ,</p><p> bedroomID int not null ,</p><p> stuname varchar(50) not null,</p><p> date datetime,</p><p&g
39、t; cause varchar(200),</p><p> remark varchar(200)</p><p><b> )</b></p><p><b> 3.2數(shù)據(jù)庫關(guān)系圖</b></p><p><b> 3.1數(shù)據(jù)庫關(guān)系圖</b></p>
40、<p> 第四章 界面設(shè)計(jì)和代碼實(shí)現(xiàn)</p><p><b> 4.1 登陸界面</b></p><p> 所有的窗體都是用Visual Studio 2005設(shè)計(jì)的,首先啟動(dòng)Micorosoft Visual Studio 2005.在【文件】菜單中,選擇【新建】,單擊【項(xiàng)目】,新建C#應(yīng)用程序。再引入命名空間:using System.Dat
41、a.SqlClient;</p><p> 提示:每個(gè)窗體要進(jìn)行數(shù)據(jù)操作時(shí)都有引入命名空間:using System.Data.SqlClient ;下面將不再提示。每個(gè)連接數(shù)據(jù)庫字符串都是調(diào)用dbconnection里的strconn方法。</p><p><b> 窗體控件如下圖:</b></p><p><b> 4.1登
42、陸界面</b></p><p> 具體代碼如下: </p><p> //登陸按鈕 </p><p> string strname = tbxname.Text.Trim();</p><p> string strpwd = tbxpwd.Text.Trim();</p>&
43、lt;p> SqlConnection conn = new SqlConnection();</p><p> conn.ConnectionString = dbconnection.strconn; </p><p> conn.Open();</p><p> SqlCommand cmd = new SqlCommand
44、();</p><p> cmd.Connection = conn;</p><p> cmd.CommandText = "select * from Admin where name='" + strname + "' and password='" + strpwd + "'";<
45、/p><p> SqlDataReader dr = cmd.ExecuteReader();</p><p> if (dr.Read())</p><p><b> {</b></p><p> MessageBox.Show("登錄成功!歡迎登陸本系統(tǒng)!");</p><
46、p> mainForm mf = new mainForm(strname, strpwd);</p><p> mf.ShowDialog ();</p><p> updatepassword upswd = new updatepassword(strname, strpwd);</p><p> this.Close();
47、 </p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> MessageBox.Show("登錄失敗,請(qǐng)重新登錄!");</p><p&
48、gt; this.tbxname.Clear();</p><p> this.tbxpwd.Clear();</p><p><b> }</b></p><p> conn.Close(); </p><p><b> 4.2 主界面設(shè)計(jì)</b></p>&l
49、t;p> 成功登陸后進(jìn)入主界面,主界面如圖4.2所示:</p><p><b> 4.2主界面</b></p><p> 在制作主窗體菜單時(shí),在主窗體里拖一個(gè)menuStrip控件,一個(gè)label控件。在menuStrip里面分別寫上管理員,學(xué)生,寢室;然后在管理員菜單里寫上“修改密碼”、“添加管理員”、“顯示所有管理員”等菜單項(xiàng),如圖4.3所示;在學(xué)生菜
50、單里添加學(xué)生入住,學(xué)生查詢選項(xiàng),如圖4.4所示,點(diǎn)擊學(xué)生查詢可以對(duì)學(xué)生查詢,點(diǎn)擊學(xué)生入住,可以對(duì)學(xué)生入住信息的添加;在寢室菜單里添加夜不歸宿,寢室查分,來訪人,寢室問題菜單項(xiàng),如圖4.5所示;分別在夜不歸宿,寢室查分,來訪人,寢室問題選項(xiàng)里添加登記,查詢菜單項(xiàng),可以對(duì)以上選項(xiàng)進(jìn)行添加和修改,如下圖4.6所示:</p><p> 4.3 主界面功能實(shí)現(xiàn)</p><p> 4.3.1 管理
51、員修改密碼</p><p> 首先是管理員修改密碼,在管理員登陸時(shí)候記錄管理員的名字和密碼,傳遞到主界窗體,傳遞代碼如下:</p><p> mainForm mf = new mainForm(strname, strpwd);</p><p> mf.ShowDialog (); </p><p> this.Close();
52、 </p><p> 這些是登陸界面?zhèn)鬟f到主窗體。</p><p> 在主窗體必須把strname,strpwd定義成全局變量,代碼如下:</p><p> string strname = null; </p><p> string strpwd = null;</p><p> 在雙擊主窗體里的【修改
53、密碼】時(shí),代碼如下:</p><p> updatepassword upswd = new updatepassword(strname, strpwd);</p><p> upswd.ShowDialog ();</p><p> 然后跳到修改密碼界面,如圖4.7:</p><p><b> 圖 4.7</b&g
54、t;</p><p> 這時(shí),登陸的用戶名已經(jīng)傳遞過來了,然后在修改密碼界面,在修改密碼時(shí),首先要輸入舊密碼,再輸入新密碼,然后進(jìn)行修改,如果舊密碼輸入有錯(cuò),不予修改。雙擊修改,添加代碼。由于其他代碼在上面都有,這里都不寫了,只寫一下主要代碼:SQL語句。</p><p><b> 【修改】按鈕代碼:</b></p><p> cmd.C
55、ommandText = "select * from Admin where name='" + strname + "' and password='" + stropwd + "'";</p><p> SqlDataReader dr = cmd.ExecuteReader();</p><p
56、> if (dr.Read())</p><p><b> {</b></p><p> cmd.CommandText = "update Admin set password='" + strnpwd + "'" + " where name='" + strname
57、+ "'";</p><p> conn.Close();</p><p> conn.Open();</p><p> cmd.ExecuteNonQuery();</p><p> MessageBox.Show("修改成功!");</p><p> thi
58、s.Close();</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> MessageBox.Show("密碼修改失敗!請(qǐng)重新修改。");</p>
59、<p> this.tbxpwd.Clear();</p><p> this.tbnewpwd.Clear();</p><p><b> } </b></p><p> 在這里修改密碼的時(shí)候首先判斷你的用戶名和密碼是否正確,只有正確輸入以前的密碼才能進(jìn)行修改,否則不予修改,此舉為防止他人惡意修改你的密碼。</p&g
60、t;<p><b> 【取消】按鈕代碼:</b></p><p> private void concel_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.Close();</p><p>&
61、lt;b> }</b></p><p> 4.3.2 添加管理員</p><p> 在雙擊主窗體中的添加管理員時(shí),在添加時(shí)要判斷用戶名有沒有重復(fù),如果重復(fù)了,不予添加,提示重新添加。代碼如下:</p><p> 【添加管理員】按鈕,顯示添加界面</p><p> private void addadminTSMI_
62、Click(object sender, EventArgs e)</p><p><b> {</b></p><p> addadmin addadmin1 = new addadmin();</p><p> addadmin1.Show();</p><p><b> }</b>&l
63、t;/p><p> 添加管理員的窗體如圖4.8:</p><p><b> 圖 4.8</b></p><p><b> 【添加】按鈕代碼:</b></p><p> cmd.CommandText = "select * from Admin where name='&quo
64、t; + strname + "' ";</p><p> SqlDataReader dr = cmd.ExecuteReader();</p><p> if (dr.Read())</p><p><b> {</b></p><p> MessageBox.Show("
65、;用戶名已存在,請(qǐng)換個(gè)名字!謝謝!");</p><p> this.tbxname.Clear();</p><p> this.tbxpwd.Clear();</p><p><b> }</b></p><p><b> else</b></p><p&g
66、t;<b> {</b></p><p> conn.Close();</p><p> conn.Open();</p><p> cmd.CommandText = "insert into Admin(name,password) values('" + strname + "',
67、39;" + strpwd + "')";</p><p> cmd.ExecuteNonQuery();</p><p> MessageBox.Show("恭喜你添加成功!"); </p><p><b> }</b></p><p> 4.3.3 顯
68、示管理員</p><p> 顯示管理員時(shí),我選擇了在工具箱里拖一個(gè)datagridview 控件,然后點(diǎn)擊無(下拉箭頭),選擇添加項(xiàng)目數(shù)據(jù)源,如圖4.9:</p><p><b> 圖4.9</b></p><p> 然后彈出界面如圖4.10:</p><p><b> 圖 4.10</b>
69、;</p><p> 選擇下一步,彈出界面如圖4.11:</p><p><b> 圖4.11</b></p><p> 選擇新建連接,彈出界面如圖 4.12:</p><p><b> 圖 4.12</b></p><p> 在服務(wù)器名里輸入“.”,然后在”選擇或
70、輸入一個(gè)數(shù)據(jù)庫名”里選擇hostel數(shù)據(jù)庫。點(diǎn)擊測(cè)試連接。彈出連接成功后選擇確定,否則重新選擇。然后又回到【數(shù)據(jù)配置源向?qū)А拷缑?,然后選擇【下一步】,再選擇【下一步】,在界面中選擇要使用的Admin表的全部字段。如圖4.13:</p><p><b> 圖 4.13</b></p><p> 然后點(diǎn)擊【完成】即可。顯示管理員的窗體如圖4.14:</p>
71、<p><b> 圖 4.14</b></p><p> 在這里的返回和關(guān)閉的代碼是一樣的,關(guān)閉的代碼已經(jīng)在上面寫過了,就不重復(fù)寫了,【添加】按鈕和添加管理員是一樣的,也不寫在這里了。只有個(gè)刷新,【刷新】就是把顯示管理員密碼重新加載一下,所以代碼如下:</p><p> this.adminTableAdapter.Fill(this.hostel
72、DataSet.Admin);</p><p> 在顯示管理員的窗體里添加一個(gè)contextSeunStrip控件,然后在contextSeunStrip控件里寫上修改和刪除,如圖4.15所示:</p><p><b> 圖 4.15</b></p><p> 雙擊刪除,進(jìn)行添加代碼,代碼如下:</p><p>
73、 cmd.CommandText = "delete from Admin where id='" + id + "'";</p><p> cmd.ExecuteNonQuery();</p><p> MessageBox.Show("記錄被刪除!", "", MessageBoxBut
74、tons.OK, MessageBoxIcon.Information);</p><p> this.adminTableAdapter.Fill(this.hostelDataSet.Admin); </p><p> 【刪除】實(shí)現(xiàn)了,就該修改了。雙擊修改,在修改的時(shí)候要進(jìn)行窗體跳轉(zhuǎn),由當(dāng)前窗體跳到一個(gè)修改的窗體,中間必須傳值,從當(dāng)前窗體獲取管理員id傳到修改的窗體,顯示要修改
75、的信息。當(dāng)前窗體的【修改】代碼如下:</p><p> int rowindex = dataGridView1.CurrentRow.Index;</p><p> DataGridViewRow rowobj = dataGridView1.Rows[rowindex];</p><p> string id = rowobj.Cells[0].Value
76、.ToString();</p><p> string name =rowobj.Cells[1].Value.ToString(); </p><p> string pwd = rowobj.Cells[2].Value.ToString();</p><p> updateadmin updateadmin = new updateadmin(id,
77、name, pwd);</p><p> 傳遞值到要修改的窗體。</p><p> updateadmin.Show(); </p><p> 修改管理員窗體如圖 4.16:</p><p><b> 圖 4.16</b></p><p> 此時(shí)把值都傳遞過來才可以修改,注意
78、序號(hào)不可用改,雙擊【修改】按鈕,添加代碼如下:</p><p> cmd.CommandText = "update Admin set name='" + strname + "'" + ",password='" + strpwd + "'"+" where id='"
79、;+strid +"'";</p><p> cmd.ExecuteNonQuery();</p><p> MessageBox.Show("修改成功!");</p><p> 以上就是對(duì)管理員的所有操作,下面只對(duì)學(xué)生的操作進(jìn)行介紹,其他功能和學(xué)生的操作差不多,都是對(duì)數(shù)據(jù)的增,刪,改,查,就不一一介紹了。<
80、;/p><p> 學(xué)生的數(shù)據(jù)操作主要有增,刪,改,查功能,增加就是和添加管理員的代碼差不多,就不詳細(xì)介紹了。</p><p> 雙擊【學(xué)生查詢】,添加代碼如下:</p><p> stuchecked stu = new stuchecked();</p><p> stu.ShowDialog();</p><p&g
81、t; 跳轉(zhuǎn)到如圖4.17:</p><p><b> 圖 4.17</b></p><p> 在這個(gè)窗體中有Combobox控件,Textbox控件,三個(gè)Button控件,contextMeunStrip控件和一個(gè)DataGridView 控件。Combobox編輯里 有四個(gè)值,分別是學(xué)號(hào),學(xué)生名,寢室號(hào),樓號(hào)。contextMeunStrip 控件里有修改和刪
82、除兩個(gè)事件,和管理的修改和刪除代碼差不多,這里就不做介紹了。首先要在主窗體加入代碼,雙擊窗體進(jìn)行代碼添加,具體如下:</p><p> dataGridView1.Columns.Add("dgvid", "學(xué)生號(hào)");</p><p> dataGridView1.Columns.Add("dgvname", "姓
83、名");</p><p> dataGridView1.Columns.Add("dgvfloor", "樓號(hào)");</p><p> dataGridView1.Columns.Add("dgvroom", "寢室號(hào)");</p><p> dataGridView1.
84、Columns.Add("dgvtime", "入住時(shí)間");</p><p> dataGridView1.Columns.Add("dgvpay", "交費(fèi)");</p><p> if (dataGridView1.Rows.Count > 0)</p><p><
85、b> {</b></p><p> dataGridView1.ContextMenuStrip = contextMenuStrip1;</p><p><b> }</b></p><p> 雙擊查詢,進(jìn)行添加代碼,此查詢?yōu)闂l件查詢。具體代碼如下:</p><p><b> 【查
86、詢】按鈕代碼:</b></p><p> string str = "";</p><p> if (comboBox1.SelectedIndex == 0)</p><p> str = "stuid='" + this.tbselect.Text.Trim() + "'&quo
87、t;;</p><p> if (comboBox1.SelectedIndex == 1)</p><p> str = "stuname='" + this.tbselect.Text.Trim() + "'";</p><p> if (comboBox1.SelectedIndex == 2)&l
88、t;/p><p> str = "bedroomID='" + this.tbselect.Text.Trim() + "'";</p><p> if (comboBox1.SelectedIndex == 3)</p><p> str = "floorID='" + this
89、.tbselect.Text.Trim() + "'";</p><p> dataGridView1.Rows.Clear();</p><p> SqlConnection conn = new SqlConnection();</p><p> conn.ConnectionString = dbconnection.strc
90、onn;</p><p> conn.Open();</p><p> SqlCommand cmd = new SqlCommand();</p><p> cmd.Connection = conn;</p><p> cmd.CommandText = "select stuid,stuname,floorID,bed
91、roomID,checktime,pay from checkin where ";</p><p> cmd.CommandText = cmd.CommandText + str;</p><p> SqlDataReader dr = cmd.ExecuteReader();</p><p> while (dr.Read())</p&g
92、t;<p><b> {</b></p><p> int i = this.dataGridView1.Rows.Add();</p><p> this.dataGridView1.Rows[i].Cells[0].Value = dr.GetValue(0).ToString();</p><p> this.dat
93、aGridView1.Rows[i].Cells[1].Value = dr.GetString(1);</p><p> this.dataGridView1.Rows[i].Cells[2].Value = dr.GetValue(2).ToString();</p><p> this.dataGridView1.Rows[i].Cells[3].Value = dr.GetVa
94、lue(3).ToString();</p><p> this.dataGridView1.Rows[i].Cells[4].Value = dr.GetValue(4).ToString();</p><p> this.dataGridView1.Rows[i].Cells[5].Value = dr.GetValue(5).ToString();</p><
95、p><b> }</b></p><p> 以上的查詢可以根據(jù)學(xué)號(hào),姓名,寢室號(hào),樓號(hào)查詢,實(shí)現(xiàn)多功能查詢。方便用戶使用。學(xué)生入住和添加功能一樣,就不介紹了。下面就是【顯示全部】,雙擊【顯示全部】,進(jìn)行代碼添加,具體代碼如下:</p><p> cmd.CommandText = "select stuid,stuname,floorID,bed
96、roomID,checktime,pay from checkin ";</p><p> SqlDataReader dr = cmd.ExecuteReader();</p><p> while (dr.Read())</p><p><b> {</b></p><p> int i = thi
97、s.dataGridView1.Rows.Add();</p><p> this.dataGridView1.Rows[i].Cells[0].Value = dr.GetValue(0).ToString();</p><p> ………………………….}</p><p><b> 第五章 軟件測(cè)試</b></p>&l
98、t;p> 由于本系統(tǒng)都是本人自己做的,測(cè)試可以算是白盒測(cè)試。這里就全部采用白盒測(cè)試,也就是讓每個(gè)語句都執(zhí)行一次。首先就是登陸,在登錄時(shí),輸入正確的用戶名和密碼進(jìn)行登陸,然后再輸入錯(cuò)誤的密碼和用戶進(jìn)行登錄,看看錯(cuò)誤的能不能登錄進(jìn)去。然后就是數(shù)據(jù)的操作,首先用正確的數(shù)據(jù)進(jìn)行操作,然后再用錯(cuò)誤的數(shù)據(jù)進(jìn)行操作,看看有沒有什么異常,這樣反復(fù)測(cè)試多次。直到用任何數(shù)據(jù)操作都不會(huì)出現(xiàn)軟件異常為止。在進(jìn)行操作時(shí)遇到了像添加或修改管理員時(shí)密碼不小心
99、輸入錯(cuò)誤而不能記住的問題,解決辦法就是在添加和修改管理員時(shí),密碼必須重復(fù)輸入一次,判斷是否一致,如果不一致就不予操作。其次就是對(duì)數(shù)據(jù)的操作,如:對(duì)學(xué)生入住寢室的添加,查看,修改和刪除。先用合法的數(shù)據(jù)進(jìn)行學(xué)生入住,然后用非法的數(shù)據(jù)進(jìn)行學(xué)生入住,合法的數(shù)據(jù)可以添加,非法的則不可以,證明在學(xué)生入住是沒有錯(cuò)誤的。還有就是看學(xué)生管理里的數(shù)據(jù)的修改,刪除和查詢,在修改數(shù)據(jù)的時(shí)候有沒有錯(cuò),結(jié)果是沒錯(cuò)誤,刪除數(shù)據(jù)都可以成功刪除。查詢就是根據(jù)學(xué)生名,學(xué)號(hào)
100、,寢室號(hào)查詢,結(jié)果沒有發(fā)現(xiàn)什么明顯錯(cuò)誤。</p><p> 其他的測(cè)試和上面差不多。就不一一介紹了。 </p><p><b> 結(jié) 論</b></p><p> 在我的設(shè)計(jì)中遇到了很多以前沒有遇到過的東西,可以說對(duì)我是很大的挑戰(zhàn),但是我通過努力,克服了不少難題,很多的問題都是要靠我們的教材來解決的,所以說課本還是要好好努力學(xué)的。從開
101、始設(shè)計(jì),到目前為止功能基本上都已經(jīng)實(shí)現(xiàn)了。我的設(shè)計(jì)程序中有管理員管理、寢室管理、學(xué)生管理、信息查詢、寢室衛(wèi)生信息管理、寢室問題管理、夜不歸宿管理的寢室管理系統(tǒng)。在設(shè)計(jì)過程中常常會(huì)遇到建立表與表之間關(guān)系時(shí)考慮的不完善而引起重復(fù)字段、索引約束等無法實(shí)現(xiàn)自己想要實(shí)現(xiàn)的設(shè)計(jì)在這樣的情況下,只有一個(gè)辦法,那就是不斷的修改,不斷的嘗試,但也不是所有的錯(cuò)誤都可以更改的了。在我的設(shè)計(jì)程序中,還有很欠缺的地方,這也是我還要努力的方向。</p>
102、<p> 我的程序有以下特點(diǎn):</p><p> (1)我使用微軟公司的SQL Server 2005數(shù)據(jù)庫管理系統(tǒng),而且是一個(gè)面向?qū)ο蟮摹⒉捎檬录?qū)動(dòng)機(jī)制的新型關(guān)系數(shù)據(jù)庫管理系統(tǒng)通過簡(jiǎn)單直觀的可視化操作,就可以創(chuàng)建數(shù)據(jù)庫和完成大部分?jǐn)?shù)據(jù)庫管理任務(wù)。</p><p> (2)系統(tǒng)界面簡(jiǎn)單易懂,方便操作,易于管理。</p><p> (3)系統(tǒng)的
103、某些設(shè)計(jì)的可擴(kuò)展性并不十分理想,在以后的修改過程中,我將會(huì)想方法對(duì)系統(tǒng)進(jìn)行完善,使系統(tǒng)的設(shè)計(jì)日益趨于更好的可擴(kuò)展性。</p><p><b> 致 謝</b></p><p> 本次畢業(yè)設(shè)計(jì)的時(shí)間是我學(xué)生生涯中最有價(jià)值的一段時(shí)光,讓我從中學(xué)到很多東西。這里有耐心輔導(dǎo)我的老師,也有努力幫助我的同學(xué),更有勤奮好學(xué)的學(xué)習(xí)氛圍。借此論文之際,我想向所有老師,同學(xué)表示我
104、的謝意。</p><p> 首先感謝XXX老師。本論文是在XXX老師精心指導(dǎo)下修改完成的。在此,要對(duì)他的細(xì)心幫助和指導(dǎo)表示由衷的感謝。在這段時(shí)間里,我從他的身上不僅學(xué)到了許多的專業(yè)知識(shí),更感受到了X老師在工作中的兢兢業(yè)業(yè),生活中的平易近人。此外,他嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和勤勞工作的精神很值得我去學(xué)習(xí)。</p><p> 非常感謝我的室友XXX,在我的畢業(yè)設(shè)計(jì)中,他的指導(dǎo)給予了我極大的幫助,使我
105、對(duì)整個(gè)畢業(yè)設(shè)計(jì)的思路有了總體的把握,并耐心的幫我解決了許多實(shí)際問題,使我有了很大收獲。</p><p> 還要感謝給與我?guī)椭钠渌瑢W(xué),他們?cè)谖业漠厴I(yè)設(shè)計(jì)過程中經(jīng)常給我提出許多關(guān)鍵性的問題,使我受益匪淺。 </p><p> 感謝三年來傳授我知識(shí)的老師們,更要感謝我的家人對(duì)我學(xué)業(yè)上的支持和鼓勵(lì),感謝所有關(guān)心幫助過我的人。同時(shí)感謝滁州職業(yè)技術(shù)學(xué)院,感謝ATA軟件學(xué)院。</p>
106、<p> 總之,在以后的學(xué)習(xí)生活中我將以加倍的努力作為對(duì)給予我?guī)椭膶W(xué)校、老師及同學(xué)們的回報(bào)。謝謝大家!</p><p><b> 參考文獻(xiàn)</b></p><p> 1.2.《SQL Server 2005實(shí)例教程》2008 《ADO.NET數(shù)據(jù)庫訪問技術(shù)案例式教程》 2006柴晟</p><p><b>
107、李立功</b></p><p> 3.《C# 2.0 程序設(shè)計(jì)教程》 2005 鄭宇軍</p><p> 畢業(yè)設(shè)計(jì)指導(dǎo)教師評(píng)價(jià):</p><p><b> 年 月 日</b></p><p> 畢業(yè)設(shè)計(jì)指導(dǎo)系部評(píng)定:</p><p><b> 年 月
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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è)論文——畢業(yè)論文管理系統(tǒng)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文管理系統(tǒng)
- 畢業(yè)論文管理系統(tǒng)
- 學(xué)生成績(jī)管理系統(tǒng)畢業(yè)論文畢業(yè)論文
- 畢業(yè)論文(設(shè)計(jì))基于.net畢業(yè)論文管理系統(tǒng)
- 學(xué)生管理管理系統(tǒng)畢業(yè)論文
- 薪資管理系統(tǒng)-畢業(yè)論文
- 畢業(yè)論文——團(tuán)員管理系統(tǒng)
- 畢業(yè)論文——學(xué)生管理系統(tǒng)
- 超市管理系統(tǒng)畢業(yè)論文
- 學(xué)生管理系統(tǒng)畢業(yè)論文
- 酒店管理系統(tǒng)畢業(yè)論文
- 倉庫管理系統(tǒng)畢業(yè)論文
- bbs管理系統(tǒng)畢業(yè)論文
- 登錄管理系統(tǒng)畢業(yè)論文
- 博客管理系統(tǒng)畢業(yè)論文
- 宿舍管理系統(tǒng)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論