數(shù)據(jù)庫(kù)課程設(shè)計(jì)-- 宿舍管理信息系統(tǒng)_第1頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-- 宿舍管理信息系統(tǒng)_第2頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-- 宿舍管理信息系統(tǒng)_第3頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-- 宿舍管理信息系統(tǒng)_第4頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-- 宿舍管理信息系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、【精品文檔】如有侵權(quán),請(qǐng)聯(lián)系網(wǎng)站刪除,僅供學(xué)習(xí)與交流數(shù)據(jù)庫(kù)課程設(shè)計(jì)- 宿舍管理信息系統(tǒng).精品文檔.1 概述1.1 系統(tǒng)開發(fā)背景與現(xiàn)狀 隨著時(shí)代的發(fā)展,計(jì)算機(jī)技術(shù)越來(lái)越深入各行各業(yè),為廣大的用戶提供了更為周到和便捷的服務(wù)。目前各行各業(yè)廣泛使用專用系統(tǒng),其內(nèi)容范圍跨越了教育科研、文化事業(yè)、金融、商業(yè)、新聞出版、娛樂、體育等各個(gè)領(lǐng)域,其用戶群十分龐大,因此,設(shè)計(jì)開發(fā)好一個(gè)專用系統(tǒng)對(duì)一個(gè)機(jī)構(gòu)(或部門)的發(fā)展十分重要。近年來(lái),隨著用戶要求的不斷提高及計(jì)算機(jī)科學(xué)的迅速發(fā)展,特別是數(shù)據(jù)庫(kù)技術(shù)的廣泛應(yīng)用,向用戶提供的服務(wù)將越來(lái)越豐富,越來(lái)越人性化。 對(duì)于學(xué)校而言,學(xué)生宿舍管理是必不可少的組成部分。目前仍然存在

2、有學(xué)校停留在宿舍管理部門人員手工記錄數(shù)據(jù)的階段,手工記錄對(duì)于規(guī)模小的學(xué)校來(lái)說(shuō)勉強(qiáng)可以接受;但對(duì)于學(xué)生信息量比較龐大,需要記錄存檔的數(shù)據(jù)比較多的高校來(lái)說(shuō),人工記錄是相當(dāng)麻煩的,而且當(dāng)查找某條記錄時(shí),由于數(shù)據(jù)量龐大,只能依靠人工去一條一條地查找,這樣不但麻煩而且浪費(fèi)許多時(shí)間,工作效率比較低。采用計(jì)算機(jī)來(lái)管理宿舍和學(xué)生的信息,大大提高了查詢的速度,節(jié)約了人力和物力資源,達(dá)到了預(yù)期的要求。今天,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長(zhǎng)足的進(jìn)步。它已經(jīng)被應(yīng)用于許多領(lǐng)域,計(jì)算機(jī)之所以如此流行的原因主要有以下幾個(gè)方面: 首先,計(jì)算機(jī)可以代替人工進(jìn)行許多繁雜的勞動(dòng); 其次,計(jì)算機(jī)可以節(jié)省許多資源; 第三,計(jì)算機(jī)

3、可以大大的提高人們的工作效率; 第四,計(jì)算機(jī)可以使敏感文檔更加安全,等等.1.2 系統(tǒng)開發(fā)方法及目標(biāo)以Microsoft SQL Server2000為后臺(tái)數(shù)據(jù)庫(kù),以Visual studio 2008為前端開發(fā)工具,以高校的宿舍管理需求為應(yīng)用背景,開發(fā)一個(gè)典型的宿舍管理系統(tǒng)。本系統(tǒng)既要滿足用戶的設(shè)計(jì),也要滿足設(shè)計(jì)員的設(shè)計(jì)目標(biāo)。1、用戶的觀點(diǎn)看,要求系統(tǒng)能夠達(dá)到以下目標(biāo) 1) 對(duì)信息的收集和保存信息。例如:輸入宿舍的基本信息,宿舍的衛(wèi)生信息等. 2)快速的傳遞信息。對(duì)那些共享的數(shù)據(jù)要快速的傳遞。 3)提供準(zhǔn)確的信息。要求比手工作業(yè)提供的更加準(zhǔn)確和細(xì)致的數(shù)據(jù),例如宿舍的所有衛(wèi)生成績(jī). 2、設(shè)計(jì)員

4、從技術(shù)觀點(diǎn)看,要求系統(tǒng)能達(dá)到以下的目標(biāo):1) 用戶使用,具有較高的用戶友好性。2) 系統(tǒng)具有靈活、嚴(yán)格的權(quán)限設(shè)定功能,確保宿舍各類資料的可靠性和保密性,防止錯(cuò)誤和違規(guī)操作。系統(tǒng)管理:可修改管理員密碼3) 能對(duì)基本信息進(jìn)行插入、刪除、修改等操作。完成宿舍的學(xué)生住宿分配,可以自動(dòng)分配或手動(dòng)分配。數(shù)據(jù)查詢:按宿舍號(hào)、班級(jí)、學(xué)生等進(jìn)行分類查詢,能進(jìn)行精確和模糊查詢。4)具有較強(qiáng)的可維護(hù)性和擴(kuò)充性,能夠適應(yīng)用戶的業(yè)務(wù)要求變化。5)可退出系統(tǒng),保證個(gè)人信息安全性。2 需求分析本系統(tǒng)的最終用戶為宿舍樓管理員。根據(jù)我們?nèi)粘I钪械慕?jīng)驗(yàn),結(jié)合對(duì)自己學(xué)校宿舍樓管理老師的咨詢和對(duì)同宿舍樓同學(xué)的調(diào)查,得出用戶的下列實(shí)

5、際要求:宿舍管理:添加、修改、刪除宿舍學(xué)生管理:學(xué)生入住、搬離來(lái)訪管理:來(lái)訪登記、查詢水電管理:水電繳費(fèi)、查詢衛(wèi)生管理:衛(wèi)生檢查、查詢用戶管理:用戶注冊(cè)、修改密碼根據(jù)如上得到的用戶需求,我們將完善以下幾功能: 1、 整體設(shè)計(jì)中,宿舍管理分為七大模塊:宿舍管理模塊、學(xué)生管理模塊、報(bào)修管理模塊、水電繳費(fèi)管理模塊、衛(wèi)生管理模塊、來(lái)訪管理模塊、用戶管理模塊。每個(gè)模塊將實(shí)現(xiàn)不同的功能。 2、 對(duì)學(xué)生、宿舍信息等進(jìn)行維護(hù),可對(duì)已存在的信息進(jìn)行修改與刪除操作,及時(shí)更改存儲(chǔ)數(shù)據(jù)中存在的不足之處,便于對(duì)學(xué)校宿舍的管理。 3、 根據(jù)輸入的查詢條件可顯示符合條件的學(xué)生、宿舍,擁有檢索迅速、查找方便、可靠性高、存儲(chǔ)量

6、大、保密性好、壽命長(zhǎng)、成本低的優(yōu)點(diǎn),可以極大地提高學(xué)生查宿舍的效率。系統(tǒng)運(yùn)行流程圖學(xué)生宿舍管理系統(tǒng)宿舍信息管理基本信息宿舍查詢學(xué)生信息管理學(xué)生入住學(xué)生查詢衛(wèi)生信息管理添加檢查檢查查詢水電收費(fèi)管理水電收費(fèi)添加水電收費(fèi)查詢來(lái)訪人員管理來(lái)訪登記來(lái)訪查詢報(bào)修管理報(bào)修登記報(bào)修查詢3 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)1.學(xué)生信息表該表用于存儲(chǔ)學(xué)生基本信息字段名字段類型主鍵學(xué)號(hào)文本是姓名文本否性別文本否班級(jí)文本否宿舍號(hào)文本否2.宿舍信息表該表用于存儲(chǔ)宿舍基本信息字段名字段類型字段大小主鍵宿舍號(hào)文本10是電話文本10否住宿費(fèi)文本10否床位數(shù)數(shù)字10否桌子數(shù)數(shù)字10否椅子數(shù)數(shù)字10否備注文本300否3.衛(wèi)生檢查信息表該表用于

7、存儲(chǔ)衛(wèi)生檢查基本信息。字段名字段類型主鍵檢查編號(hào)自動(dòng)編號(hào)是宿舍號(hào)文本否檢查日期日期/時(shí)間否檢查情況文本否備注文本否4.用戶信息表該表用于存儲(chǔ)用戶基本信息 字段名字段類型主鍵用戶名文本否密碼文本否4 程序核心代碼及控件描述4.1登錄界面設(shè)計(jì)顯示登陸界面,提示用戶輸入賬號(hào)、密碼,若錯(cuò)誤給出提示。核心代碼: static void Main() Application.Run(new Login();private void btAdd_Click(object sender, System.EventArgs e)if(name.Text.Trim()=""|password.

8、Text.Trim()="")MessageBox.Show("請(qǐng)輸入用戶名和密碼","提示");elseoleConnection1.Open();OleDbCommand cmd=new OleDbCommand("",oleConnection1);string sql="select * from userinfo where UName='"+name.Text.Trim()+"' and PWD='"+password.Text.Trim(

9、)+"'"cmd.CommandText=sql;if (null!=cmd.ExecuteScalar()/隱藏登錄窗口this.Visible=false; /創(chuàng)建并打開主界面Main main=new Main();main.Tag=this.FindForm();OleDbDataReader dr;cmd.CommandText=sql;dr=cmd.ExecuteReader();dr.Read();main.statusBarPanel2.Text=name.Text.Trim();main.ShowDialog(); elseMessageBox.S

10、how("用戶名或密碼錯(cuò)誤","警告");oleConnection1.Close();private void btClose_Click(object sender, System.EventArgs e)this.Close(); private void Login_Load(object sender, EventArgs e)4.2 主界面設(shè)計(jì)顯示系統(tǒng)主界面,顯示用戶登錄信息并給出各個(gè)功能模塊的選項(xiàng)。核心代碼:protected override void Dispose( bool disposing )if( disposing )if(

11、components != null)components.Dispose();base.Dispose( disposing );AddUser addUser;private void menuItem9_Click(object sender, System.EventArgs e)addUser = new AddUser();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addUser.MdiParent = this;add

12、User.WindowState = FormWindowState.Maximized;addUser.Show();ModifyCode modifyCode;private void menuItem10_Click(object sender, System.EventArgs e)modifyCode = new ModifyCode();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();modifyCode.MdiParent

13、= this;modifyCode.Tag = this.statusBarPanel2.Text.Trim();modifyCode.WindowState = FormWindowState.Maximized;modifyCode.Show();private void menuItem11_Click(object sender, System.EventArgs e)(System.Windows.Forms.Form)this.Tag).Visible=true;this.Close();private void menuItem8_Click(object sender, Sys

14、tem.EventArgs e)this.Close();AddDorm addDorm;private void menuItem12_Click(object sender, System.EventArgs e)addDorm = new AddDorm();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addDorm.MdiParent = this;addDorm.WindowState = FormWindowState.M

15、aximized;addDorm.Show();Dorm dorm;private void menuItem13_Click(object sender, System.EventArgs e)dorm = new Dorm();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();dorm.MdiParent = this;dorm.WindowState = FormWindowState.Maximized;dorm.Show();Ad

16、dStudent addStudent;private void menuItem14_Click(object sender, System.EventArgs e)addStudent = new AddStudent();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addStudent.MdiParent = this;addStudent.WindowState = FormWindowState.Maximized;addS

17、tudent.Show();Student student;private void menuItem15_Click(object sender, System.EventArgs e)student = new Student();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();student.MdiParent = this;student.WindowState = FormWindowState.Maximized;studen

18、t.Show();AddCheck addCheck;private void menuItem16_Click(object sender, System.EventArgs e)addCheck = new AddCheck();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addCheck.MdiParent = this;addCheck.WindowState = FormWindowState.Maximized;addCh

19、eck.Show();Check check;private void menuItem17_Click(object sender, System.EventArgs e)check = new Check();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();check.MdiParent = this;check.WindowState = FormWindowState.Maximized;check.Show();AddCharg

20、e addCharge;private void menuItem18_Click(object sender, System.EventArgs e)addCharge = new AddCharge();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addCharge.MdiParent = this;addCharge.WindowState = FormWindowState.Maximized;addCharge.Show()

21、;Charge charge;private void menuItem19_Click(object sender, System.EventArgs e)charge = new Charge();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();charge.MdiParent = this;charge.WindowState = FormWindowState.Maximized;charge.Show();AddRepair a

22、ddRepair;private void menuItem20_Click(object sender, System.EventArgs e)addRepair = new AddRepair();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addRepair.MdiParent = this;addRepair.WindowState = FormWindowState.Maximized;addRepair.Show();Re

23、pair repair;private void menuItem21_Click(object sender, System.EventArgs e)repair = new Repair();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();repair.MdiParent = this;repair.WindowState = FormWindowState.Maximized;repair.Show();AddRegis addRe

24、gis;private void menuItem22_Click(object sender, System.EventArgs e)addRegis = new AddRegis();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addRegis.MdiParent = this;addRegis.WindowState = FormWindowState.Maximized;addRegis.Show();Register reg

25、ister;private void menuItem23_Click(object sender, System.EventArgs e)register = new Register();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();register.MdiParent = this;register.WindowState = FormWindowState.Maximized;register.Show();private vo

26、id toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)switch(toolBar1.Buttons.IndexOf(e.Button)case 0:Form addDorm = new AddDorm();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addDorm.MdiParent = this;addDo

27、rm.WindowState = FormWindowState.Maximized;addDorm.Show();break;case 1:Form addStudent = new AddStudent();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addStudent.MdiParent = this;addStudent.WindowState = FormWindowState.Maximized;addStudent.S

28、how();break;case 2:Form addCheck = new AddCheck();for(int x=0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addCheck.MdiParent = this;addCheck.WindowState = FormWindowState.Maximized;addCheck.Show();break;case 3:Form addCharge = new AddCharge();for(int x=

29、0;x<this.MdiChildren.Length;x+)Form tempChild = (Form)this.MdiChildrenx;tempChild.Close();addCharge.MdiParent = this;addCharge.WindowState = FormWindowState.Maximized;addCharge.Show();break;case 4:Form addRepair = new AddRepair();for(int x=0;x<MdiChildren.Length;x+)Form tempChild = (Form)MdiCh

30、ildrenx;tempChild.Close();addRepair.MdiParent = this;addRepair.WindowState = FormWindowState.Maximized;addRepair.Show();break;case 5:Form addRegis = new AddRegis();for(int x=0;x<MdiChildren.Length;x+)Form tempChild = (Form)MdiChildrenx;tempChild.Close();addRegis.MdiParent = this;addRegis.WindowSt

31、ate = FormWindowState.Maximized;addRegis.Show();break;4.3 學(xué)生信息管理頁(yè)面設(shè)計(jì)提示輸入學(xué)生信息(宿舍號(hào)、學(xué)號(hào)、姓名、班級(jí)等),實(shí)現(xiàn)學(xué)生信息錄入。核心代碼:public AddStudent()/ Windows 窗體設(shè)計(jì)器支持所必需的InitializeComponent();this.oleConnection1 = new OleDbConnection(DormMIS.database.dbConnection.connection);/ TODO: 在InitializeComponent 調(diào)用后添加任何構(gòu)造函數(shù)代碼/ <

32、summary>/ 清理所有正在使用的資源。/ </summary>protected override void Dispose( bool disposing )if( disposing )if(components != null)components.Dispose();base.Dispose( disposing );#region Windows 窗體設(shè)計(jì)器生成的代碼/ <summary>/ 設(shè)計(jì)器支持所需的方法- 不要使用代碼編輯器修改/ 此方法的內(nèi)容。/ </summary>private void btSure_Click(obj

33、ect sender, System.EventArgs e)if (textDormID.Text.Trim()=""|textSID.Text.Trim()=""|textName.Text.Trim()="")MessageBox.Show("請(qǐng)?zhí)顚懲暾畔?quot;,"確定");elseoleConnection1.Open();string sql="select * from dorm where dormID='"+textDormID.Text.Trim()+

34、"'"OleDbCommand cmd = new OleDbCommand(sql,oleConnection1);if (null=cmd.ExecuteScalar()MessageBox.Show("沒有該房間號(hào),請(qǐng)重新輸入","提示");elsesql = "select bedNum-(select count(*) from student where dormID = '"+textDormID.Text.Trim()+"') from dorm "+&q

35、uot;where dormID = '"+textDormID.Text.Trim()+"'"cmd.CommandText=sql;if (Convert.ToInt16(cmd.ExecuteScalar().ToString().Trim()=0)MessageBox.Show("該房間已滿","提示");elsesql="select * from student where SID='"+textSID.Text.Trim()+"'"cmd.

36、CommandText = sql;if (null!=cmd.ExecuteScalar()MessageBox.Show("學(xué)號(hào)重復(fù)","提示");elsesql = "insert into student values ('"+textSID.Text.Trim()+"','"+textName.Text.Trim()+"','"+comboSex.Text.Trim()+"',"+"'"+t

37、extClass.Text.Trim()+"','"+textDormID.Text.Trim()+"')"cmd.CommandText = sql;cmd.ExecuteNonQuery();MessageBox.Show("添加成功","提示");clear();oleConnection1.Close();private void btClose_Click(object sender, System.EventArgs e)this.Close();private void cle

38、ar()textDormID.Text=""textSID.Text=""textName.Text=""comboSex.Text=""textClass.Text=""顯示學(xué)生信息查詢界面,可根據(jù)學(xué)號(hào)、姓名、宿舍號(hào)等信息實(shí)現(xiàn)查找功能。核心代碼:DataSet ds;private void btQuery_Click(object sender, System.EventArgs e)oleConnection1.Open();string sql="select SID as 學(xué)

39、號(hào),SName as 姓名,SSex as 性別,class as 班級(jí),dormID as 宿舍號(hào)from student"if (textSID.Text.Trim()=""&&textName.Text.Trim()=""&&textDormID.Text.Trim()="")sql=sql;elseif (textSID.Text.Trim()!="")sql=sql+" where SID='"+textSID.Text.Trim()+

40、"'"else if (textName.Text.Trim()!="")sql=sql+" where SName='"+textName.Text.Trim()+"'"elsesql=sql+" where dormID='"+textDormID.Text.Trim()+"'"OleDbDataAdapter adp = new OleDbDataAdapter(sql,oleConnection1);ds = new DataS

41、et();ds.Clear();adp.Fill(ds,"student");dataGrid1.DataSource = ds.Tables0.DefaultView;dataGrid1.CaptionText = "共有"+ds.Tables0.Rows.Count+"條記錄"oleConnection1.Close();StudentModify studentModify;private void btAdd_Click(object sender, System.EventArgs e)if (dataGrid1.DataSource!=null&&dataGrid1.CurrentRowIndex>=0&&dataGrid1dataGrid1.CurrentCell!=null)studentModify = new StudentModify();studentModify.textSID.Te

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論