
毕 业 设 计
姓 名: XXXX
班 级: 08级软件技术(2)班
设计题目: 寝室管理系统
指导教师: XXXX
二○一○年十一月
目录
目录 2
引 言 3
摘 要 4
第一章 需求分析 5
1.1功能需求 5
1.1.1 基本功能需求 5
1.1.2 用户界面需求 5
1.2性能需求 6
1.2.1系统安全性 6
第二章 宿舍管理系统详细设计 7
2.1系统功能模块图 7
2.2数据库设计 8
第三章 创建数据库 12
3.1数据库的创建: 12
3.1.1数据库的创建: 12
3.1.1 表的创建: 13
3.2数据库关系图 14
第四章 界面设计和代码实现 15
4.1 登陆界面 15
4.2 主界面设计 16
4.3 主界面功能实现 17
4.3.1 管理员修改密码 17
4.3.2 添加管理员 19
4.3.3 显示管理员 20
第五章 软件测试 27
结 论 28
致 谢 29
参考文献 30
引 言
寝室管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在寝室管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。
21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生寝室管理系统。学生寝室管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。
摘 要
高校学生宿舍管理系统是典型的信息管理系统(MIS),我们使用微软公司办公软件SQL Server 2005,是一个关系管理数据库管理系统,而且是一个面向对象的、采用事件驱动机制的新型关系数据库管理系统。使用SQL Server 2005时,用户可以不需编写任何代码,仅通过简单直观的可视化操作,就可以创建数据库和完成大部分数据库管理任务,也可以编写代码实现建立数据库和数据表及对数据库的管理。旧的手工纪录的宿舍管理方式已经不能适应高速发展的信息化时代,新的宿舍管理系统开发出来之后,学校的现有的宿舍信息管理将有很大的改观,由过去的人工方式转变为计算机方式,由效率低、数据冗余、易产生错误转变为检索迅速、查找方便、可靠性高、存储量大。这些优点能够极大地提高效率,也是学校科学化、正规化管理的重要条件。
论文关键词: 宿舍管理系统 数据库 (DBMS)
第一章 需求分析
目前,我们学校的宿舍管理采用的还是人工来进行管理的, 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。
1.1功能需求
1.1.1 基本功能需求
本系统主要要实现的是寝室管理系统,在设计时要尽可能贴近寝室问题,方便用户操作。具体基本功能如下:
1.系统要求用户必须输入正确的用户名和密码才能进入系统。
2.系统应该提供添加用户和用户的修改,删除和查询功能。
3.系统应提供学生入住寝室的功能和查询,修改和删除功能。
4.系统应提供人员来访登记及时间登记,条件查询,删除。
5.系统应提供寝室里学生夜不归宿的登记,条件查询,修改,删除。
6.系统应提供寝室卫生登记,条件查询,修改,删除。
7.系统应提供寝室问题登记,查询,删除等。
8.在添加用户时应提供是否存在此用户,不存在则添加,否则不予添加。
1.1.2 用户界面需求
学生宿舍管理系统应提供简单、层次关系明了、清晰的操作界面,使用户一目了然。尽可能的为用户的录入、查询等功能操作提供方便,尽可能减少用户输入。最好能让用户不用看系统说明就能很好的使用本系统。
1.2性能需求
1.2.1系统安全性
寝室管理系统中的增加用户、学生学期注册(交住宿费方能注册)、学生毕业离校等的某些模块都是和学生住宿费相联系在一起的,只有每年度的住宿费用交纳完毕才准许该生离校,所以在系统的管理权限上应当进行严格控制,具体思想如下:
1.要想对该学生宿舍管理系统进行操作就应当具有某些操作权限。没有权限的用户将不能通过任何渠道来登录该系统,查看该系统的任何信息和数据,以确保系统的严密性和安全性。
2.在添加管理员时要保证用户名不能重复,只有正确输入用户和密码才能进入本系统。没有管理员用户和密码的不能进入本系统。
3.在添加信息时要提示一些必须填写的数据必须填,否则不予添加。
4.退出系统应该是安全退出,不出现任何意外。
5.确保再对数据进行操作时不会出息任何错误。
第二章 宿舍管理系统详细设计
2.1系统功能模块图
图2.1 系统功能模块UML用例图
系统功能模块中,主要有四大功能。管理员登陆,管理员管理,学生管理,寝室管理 。每个模块都实现不同的功能,下面将分别介绍。
1.管理员登陆:登陆后方进行操作。只有正确的用户名和密码才能进去。
2.管理员管理:管理员的添加,修改,删除,查看。
3.学生管理:学生入住寝室,入住查询,修改,删除。
4.寝室管理:寝室管理又分为四个主要模块。分别是寝室卫生管理,寝室夜不归宿管理,寝室来访人管理,寝室问题管管理。这些模块的功能有:
(1)寝室卫生管理:寝室卫生查分的登记,寝室卫生条件查询,删除和修改等。
(2)寝室夜不归宿管理:夜不归宿学生登记,查询,修改,删除。
(3)寝室来访人管理:来访人的信息登记,查看,修改,删除。
(4)寝室问题管理:问题登记,查询,删除。
2.2数据库设计
数据库中应该有管理员表,寝室表,寝室楼表,学生表,系表,专业表,学生入住寝室表,夜不归宿表,寝室卫生表,来访人表,寝室问题登记表,寝室物品表。每个表的字段在下面将详细介绍。
1.管理员表(admin)
| 序号 | ID | Int(identiy),PK,not null | 
| 用户名 | name | Varchar(50),not null | 
| 密码 | password | Varchar(50),not null | 
| 序号 | ID | Int,not null | 
| 楼号 | floorID | Int,PK,not null | 
| 备注 | Remark | Varvchar(200) | 
| 楼号 | floorID | Int,PK,not null | 
| 寝室号 | bedroomID | Int,FK,not null | 
| 费用 | cost | Money | 
| 备注 | Remark | Varchar(200) | 
| 学生名 | stuname | Varchar(50),not null | 
| 学号 | Stuid | Varchar(50),PK,not null | 
| 性别 | sex | Varchar(50),not null | 
| 出生日期 | birthday | Datetime,null | 
| 电话 | teleph | Varchar(50),null | 
| 系别 | department | Varcahr(50),null | 
| 专业 | specialty | Varchar(50),null | 
| 辅导员 | Coach | Varchar(50),null | 
| 备注 | remark | Varchar(200),null | 
| 序号 | ID | Int not null,PK | 
| 楼号 | floorID | Int,,not null | 
| 寝室号 | bedroomID | Int,FK,not null | 
| 物品名 | goodsname | Varchar(50),not null | 
| 数量 | numbers | Int,not null | 
| 价格 | price | Money,null | 
| 备注 | remark | Varchar(200),null | 
| 序号 | ID | Int,not null | 
| 楼号 | floorID | Int,,not null | 
| 寝室号 | bedroomID | Int,not null,FK | 
| 年份 | years | Varchar(50),not null | 
| 月份 | Mouths | Varchar(50),not null | 
| 单价 | price | Float,not null | 
| 用电量 | Useelec | Float,not null | 
| 总价 | Totalprice | Money,not null | 
| 备注 | remark | Varchar(200) | 
| 序号 | ID | Int ,not null | 
| 楼号 | FloorID | Int,not null | 
| 寝室号 | BedroomID | Int,FK,not null | 
| 学生名 | Stuname | Varchar(50),not null | 
| 日期 | date | Datetime,null | 
| 原因 | Case | Varchar(50) | 
| 备注 | Remark | Varchar(200) | 
| 序号 | ID | Int,not null | 
| 楼号 | floorID | Int,not null | 
| 寝室号 | bedroomID | Int,FK,not null | 
| 问题 | question | Varchar(200) | 
| 日期 | date | Datetime | 
| 备注 | remark | Varchar(200) | 
| 序号 | ID | Int ,not null | 
| 楼号 | floorID | Int ,not null | 
| 寝室号 | bedroomID | Int,not null,FK | 
| 日期 | date | datetime | 
| 寝室得分 | score | Float, | 
| 备注 | remark | Varchar(200) | 
| 序号 | ID | Int,not null | 
| 来访人 | Visitname | Varchar(50),not null | 
| 学生名 | stuname | Varcahr(50),not null | 
| 寝室号 | bedroomID | Int,FK,not null | 
| 来访时间 | visittime | Datetime | 
| 离开时间 | leveltime | Datetime | 
| 备注 | remark | Varchar(200) | 
| 学号 | Stuid | Varchar(50),not null | 
| 学生名 | stuname | Varchar(50),not null | 
| 寝室号 | bedroomID | Int,not null,FK | 
| 入住时间 | checktime | Datetime | 
| 是否交费 | pay | Varchar(50) | 
| 备注 | remark | Varchar(200) | 
| 序号 | ID | Int,not null | 
| 系名 | Department | Varchar(50),PK | 
| 序号 | ID | Int,not null | 
| 系别 | deparment | Varchar(50),FK | 
| 专业 | specialty | Varchar(50),not null | 
打开本系统时首先要管理员登录才能进入,否则不予进入。登录成功后方可对学生和寝室管理,也可以修改自己的密码。然后才对信息进行操作。在管理员里有个超级管理员,其他的都是普通管理员,超级管理员可以对管理员进行添加修改和删除,其他的用户只可以对自己的秘密进行修,和添加管理员。每个数据表间有关系。数据库中管理员表是存在的,寝室表,寝室楼表,学生入住寝室表,夜不归宿表,寝室卫生表,来访人表,寝室问题登记表,寝室物品表都是围绕寝室表,以寝室表中的寝室号为中心的。学生表和学生入住表有联系,学生表还和专业表有联系,专业表和系别表有关系。在查询的时候提供条件查询,让用户能很好的操作。为了以防数据库出错,大多数字段都是varchar类型的。
第三章 创建数据库
3.1数据库的创建:
创建数据库及数据表,我们采用SQL Server 2005 创建,使用代码创建。
3.1.1数据库的创建:
create database hostel
on primary
(
name=hostel,
filename='E:\\Study\毕业设计\hostel.mdf',
size=10,
maxsize=50,
filegrowth=10%
)
log on
(
name=hostel_log,
filename='E:\\Study\毕业设计\hostel_log.ldf',
size=10,
maxsize=50,
filegrowth=10%
)
go
use hostel
go
3.1.1 表的创建:
1.管理员表
create table [Admin](
id int identity not null primary key,
name varchar(20) not null,
password varchar(20) not null
)
2.寝室表
create table [bedroom](
bedroomID int not null primary key,
floorID int not null,
price money not null ,
remark varchar(200)
)
3.学生表
create table[student](
stuname varchar(50) not null,
stuid varchar(50) not null primary key,
birthday datetime,
checkschuool datetime,
sex nchar(2) check(sex='男'or sex='女'),
teleph varchar(50) null,
department varchar(50) not null,
specialty varchar(50) not null,
coach varchar(50) not null,
remark varchar(200)
)
4.寝室夜不归宿表
create table[night](
floorID int not null ,
bedroomID int not null ,
stuname varchar(50) not null,
date datetime,
cause varchar(200),
remark varchar(200)
)
3.2数据库关系图
3.1数据库关系图
第四章 界面设计和代码实现
4.1 登陆界面
所有的窗体都是用Visual Studio 2005设计的,首先启动Micorosoft Visual Studio 2005.在【文件】菜单中,选择【新建】,单击【项目】,新建C#应用程序。再引入命名空间:using System.Data.SqlClient;
提示:每个窗体要进行数据操作时都有引入命名空间:using System.Data.SqlClient ;下面将不再提示。每个连接数据库字符串都是调用dbconnection里的strconn方法。
窗体控件如下图:
4.1登陆界面
具体代码如下:
//登陆按钮
string strname = tbxname.Text.Trim();
string strpwd = tbxpwd.Text.Trim();
SqlConnection conn = new SqlConnection();
conn.ConnectionString = dbconnection.strconn;
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "select * from Admin where name='" + strname + "' and password='" + strpwd + "'";
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
MessageBox.Show("登录成功!欢迎登陆本系统!");
mainForm mf = new mainForm(strname, strpwd);
mf.ShowDialog ();
updatepassword upswd = new updatepassword(strname, strpwd);
this.Close();
}
else
{
MessageBox.Show("登录失败,请重新登录!");
this.tbxname.Clear();
this.tbxpwd.Clear();
}
conn.Close();
4.2 主界面设计
成功登陆后进入主界面,主界面如图4.2所示:
4.2主界面
在制作主窗体菜单时,在主窗体里拖一个menuStrip控件,一个label控件。在menuStrip里面分别写上管理员,学生,寝室;然后在管理员菜单里写上“修改密码”、“添加管理员”、“显示所有管理员”等菜单项,如图4.3所示;在学生菜单里添加学生入住,学生查询选项,如图4.4所示,点击学生查询可以对学生查询,点击学生入住,可以对学生入住信息的添加;在寝室菜单里添加夜不归宿,寝室查分,来访人,寝室问题菜单项,如图4.5所示;分别在夜不归宿,寝室查分,来访人,寝室问题选项里添加登记,查询菜单项,可以对以上选项进行添加和修改,如下图4.6所示:
4.3 主界面功能实现
4.3.1 管理员修改密码
首先是管理员修改密码,在管理员登陆时候记录管理员的名字和密码,传递到主界窗体,传递代码如下:
mainForm mf = new mainForm(strname, strpwd);
mf.ShowDialog ();
this.Close();
这些是登陆界面传递到主窗体。
在主窗体必须把strname,strpwd定义成全局变量,代码如下:
string strname = null;
string strpwd = null;
在双击主窗体里的【修改密码】时,代码如下:
updatepassword upswd = new updatepassword(strname, strpwd);
upswd.ShowDialog ();
然后跳到修改密码界面,如图4.7:
图 4.7
这时,登陆的用户名已经传递过来了,然后在修改密码界面,在修改密码时,首先要输入旧密码,再输入新密码,然后进行修改,如果旧密码输入有错,不予修改。双击修改,添加代码。由于其他代码在上面都有,这里都不写了,只写一下主要代码:SQL语句。
【修改】按钮代码:
cmd.CommandText = "select * from Admin where name='" + strname + "' and password='" + stropwd + "'";
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
cmd.CommandText = "update Admin set password='" + strnpwd + "'" + " where name='" + strname + "'";
conn.Close();
conn.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("修改成功!");
this.Close();
}
else
{
MessageBox.Show("密码修改失败!请重新修改。");
this.tbxpwd.Clear();
this.tbnewpwd.Clear();
}
在这里修改密码的时候首先判断你的用户名和密码是否正确,只有正确输入以前的密码才能进行修改,否则不予修改,此举为防止他人恶意修改你的密码。
【取消】按钮代码:
private void concel_Click(object sender, EventArgs e)
{
this.Close();
}
4.3.2 添加管理员
在双击主窗体中的添加管理员时,在添加时要判断用户名有没有重复,如果重复了,不予添加,提示重新添加。代码如下:
【添加管理员】按钮,显示添加界面
private void addadminTSMI_Click(object sender, EventArgs e)
{
addadmin addadmin1 = new addadmin();
addadmin1.Show();
}
添加管理员的窗体如图4.8:
图 4.8
【添加】按钮代码:
cmd.CommandText = "select * from Admin where name='" + strname + "' ";
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
MessageBox.Show("用户名已存在,请换个名字!谢谢!");
this.tbxname.Clear();
this.tbxpwd.Clear();
}
else
{
conn.Close();
conn.Open();
cmd.CommandText = "insert into Admin(name,password) values('" + strname + "','" + strpwd + "')";
cmd.ExecuteNonQuery();
MessageBox.Show("恭喜你添加成功!");
}
4.3.3 显示管理员
显示管理员时,我选择了在工具箱里拖一个datagridview 控件,然后点击无(下拉箭头),选择添加项目数据源,如图4.9:
图4.9
然后弹出界面如图4.10:
图 4.10
选择下一步,弹出界面如图4.11:
图4.11
选择新建连接,弹出界面如图 4.12:
图 4.12
在服务器名里输入“.”,然后在”选择或输入一个数据库名”里选择hostel数据库。点击测试连接。弹出连接成功后选择确定,否则重新选择。然后又回到【数据配置源向导】界面,然后选择【下一步】,再选择【下一步】,在界面中选择要使用的Admin表的全部字段。如图4.13:
图 4.13
然后点击【完成】即可。显示管理员的窗体如图4.14:
图 4.14
在这里的返回和关闭的代码是一样的,关闭的代码已经在上面写过了,就不重复写了,【添加】按钮和添加管理员是一样的,也不写在这里了。只有个刷新,【刷新】就是把显示管理员密码重新加载一下,所以代码如下:
this.adminTableAdapter.Fill(this.hostelDataSet.Admin);
在显示管理员的窗体里添加一个contextSeunStrip控件,然后在contextSeunStrip控件里写上修改和删除,如图4.15所示:
图 4.15
双击删除,进行添加代码,代码如下:
cmd.CommandText = "delete from Admin where id='" + id + "'";
cmd.ExecuteNonQuery();
MessageBox.Show("记录被删除!", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.adminTableAdapter.Fill(this.hostelDataSet.Admin);
【删除】实现了,就该修改了。双击修改,在修改的时候要进行窗体跳转,由当前窗体跳到一个修改的窗体,中间必须传值,从当前窗体获取管理员id传到修改的窗体,显示要修改的信息。当前窗体的【修改】代码如下:
int rowindex = dataGridView1.CurrentRow.Index;
DataGridViewRow rowobj = dataGridView1.Rows[rowindex];
string id = rowobj.Cells[0].Value.ToString();
string name =rowobj.Cells[1].Value.ToString();
string pwd = rowobj.Cells[2].Value.ToString();
updateadmin updateadmin = new updateadmin(id, name, pwd);
传递值到要修改的窗体。
updateadmin.Show();
修改管理员窗体如图 4.16:
图 4.16
此时把值都传递过来才可以修改,注意序号不可用改,双击【修改】按钮,添加代码如下:
cmd.CommandText = "update Admin set name='" + strname + "'" + ",password='" + strpwd + "'"+" where id='"+strid +"'";
cmd.ExecuteNonQuery();
MessageBox.Show("修改成功!");
以上就是对管理员的所有操作,下面只对学生的操作进行介绍,其他功能和学生的操作差不多,都是对数据的增,删,改,查,就不一一介绍了。
学生的数据操作主要有增,删,改,查功能,增加就是和添加管理员的代码差不多,就不详细介绍了。
双击【学生查询】,添加代码如下:
stuchecked stu = new stuchecked();
stu.ShowDialog();
跳转到如图4.17:
图 4.17
在这个窗体中有Combobox控件,Textbox控件,三个Button控件,contextMeunStrip控件和一个DataGridView 控件。Combobox编辑里 有四个值,分别是学号,学生名,寝室号,楼号。contextMeunStrip 控件里有修改和删除两个事件,和管理的修改和删除代码差不多,这里就不做介绍了。首先要在主窗体加入代码,双击窗体进行代码添加,具体如下:
dataGridView1.Columns.Add("dgvid", "学生号");
dataGridView1.Columns.Add("dgvname", "姓名");
dataGridView1.Columns.Add("dgvfloor", "楼号");
dataGridView1.Columns.Add("dgvroom", "寝室号");
dataGridView1.Columns.Add("dgvtime", "入住时间");
dataGridView1.Columns.Add("dgvpay", "交费");
if (dataGridView1.Rows.Count > 0)
{
dataGridView1.ContextMenuStrip = contextMenuStrip1;
}
双击查询,进行添加代码,此查询为条件查询。具体代码如下:
【查询】按钮代码:
string str = "";
if (comboBox1.SelectedIndex == 0)
str = "stuid='" + this.tbselect.Text.Trim() + "'";
if (comboBox1.SelectedIndex == 1)
str = "stuname='" + this.tbselect.Text.Trim() + "'";
if (comboBox1.SelectedIndex == 2)
str = "bedroomID='" + this.tbselect.Text.Trim() + "'";
if (comboBox1.SelectedIndex == 3)
str = "floorID='" + this.tbselect.Text.Trim() + "'";
dataGridView1.Rows.Clear();
SqlConnection conn = new SqlConnection();
conn.ConnectionString = dbconnection.strconn;
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "select stuid,stuname,floorID,bedroomID,checktime,pay from checkin where ";
cmd.CommandText = cmd.CommandText + str;
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
int i = this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[i].Cells[0].Value = dr.GetValue(0).ToString();
this.dataGridView1.Rows[i].Cells[1].Value = dr.GetString(1);
this.dataGridView1.Rows[i].Cells[2].Value = dr.GetValue(2).ToString();
this.dataGridView1.Rows[i].Cells[3].Value = dr.GetValue(3).ToString();
this.dataGridView1.Rows[i].Cells[4].Value = dr.GetValue(4).ToString();
this.dataGridView1.Rows[i].Cells[5].Value = dr.GetValue(5).ToString();
}
以上的查询可以根据学号,姓名,寝室号,楼号查询,实现多功能查询。方便用户使用。学生入住和添加功能一样,就不介绍了。下面就是【显示全部】,双击【显示全部】,进行代码添加,具体代码如下:
cmd.CommandText = "select stuid,stuname,floorID,bedroomID,checktime,pay from checkin ";
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
int i = this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[i].Cells[0].Value = dr.GetValue(0).ToString();
………………………….}
第五章 软件测试
由于本系统都是本人自己做的,测试可以算是白盒测试。这里就全部采用白盒测试,也就是让每个语句都执行一次。首先就是登陆,在登录时,输入正确的用户名和密码进行登陆,然后再输入错误的密码和用户进行登录,看看错误的能不能登录进去。然后就是数据的操作,首先用正确的数据进行操作,然后再用错误的数据进行操作,看看有没有什么异常,这样反复测试多次。直到用任何数据操作都不会出现软件异常为止。在进行操作时遇到了像添加或修改管理员时密码不小心输入错误而不能记住的问题,解决办法就是在添加和修改管理员时,密码必须重复输入一次,判断是否一致,如果不一致就不予操作。其次就是对数据的操作,如:对学生入住寝室的添加,查看,修改和删除。先用合法的数据进行学生入住,然后用非法的数据进行学生入住,合法的数据可以添加,非法的则不可以,证明在学生入住是没有错误的。还有就是看学生管理里的数据的修改,删除和查询,在修改数据的时候有没有错,结果是没错误,删除数据都可以成功删除。查询就是根据学生名,学号,寝室号查询,结果没有发现什么明显错误。
其他的测试和上面差不多。就不一一介绍了。
结 论
在我的设计中遇到了很多以前没有遇到过的东西,可以说对我是很大的挑战,但是我通过努力,克服了不少难题,很多的问题都是要靠我们的教材来解决的,所以说课本还是要好好努力学的。从开始设计,到目前为止功能基本上都已经实现了。我的设计程序中有管理员管理、寝室管理、学生管理、信息查询、寝室卫生信息管理、寝室问题管理、夜不归宿管理的寝室管理系统。在设计过程中常常会遇到建立表与表之间关系时考虑的不完善而引起重复字段、索引约束等无法实现自己想要实现的设计在这样的情况下,只有一个办法,那就是不断的修改,不断的尝试,但也不是所有的错误都可以更改的了。在我的设计程序中,还有很欠缺的地方,这也是我还要努力的方向。
我的程序有以下特点:
(1)我使用微软公司的SQL Server 2005数据库管理系统,而且是一个面向对象的、采用事件驱动机制的新型关系数据库管理系统通过简单直观的可视化操作,就可以创建数据库和完成大部分数据库管理任务。
(2)系统界面简单易懂,方便操作,易于管理。
(3)系统的某些设计的可扩展性并不十分理想,在以后的修改过程中,我将会想方法对系统进行完善,使系统的设计日益趋于更好的可扩展性。
致 谢
本次毕业设计的时间是我学生生涯中最有价值的一段时光,让我从中学到很多东西。这里有耐心辅导我的老师,也有努力帮助我的的同学,更有勤奋好学的学习氛围。借此论文之际,我想向所有老师,同学表示我的谢意。
首先感谢XXX老师。本论文是在XXX老师精心指导下修改完成的。在此,要对他的细心帮助和指导表示由衷的感谢。在这段时间里,我从他的身上不仅学到了许多的专业知识,更感受到了X老师在工作中的兢兢业业,生活中的平易近人。此外,他严谨的治学态度和勤劳工作的精神很值得我去学习。
非常感谢我的室友XXX,在我的毕业设计中,他的指导给予了我极大的帮助,使我对整个毕业设计的思路有了总体的把握,并耐心的帮我解决了许多实际问题,使我有了很大收获。
还要感谢给与我帮助的其他同学,他们在我的毕业设计过程中经常给我提出许多关键性的问题,使我受益匪浅。
感谢三年来传授我知识的老师们,更要感谢我的家人对我学业上的支持和鼓励,感谢所有关心帮助过我的人。同时感谢滁州职业技术学院,感谢ATA软件学院。
总之,在以后的学习生活中我将以加倍的努力作为对给予我帮助的学校、老师及同学们的回报。谢谢大家!
滁州职业技术学院2005级软件技术(2)班:XX
2008年11月30日
参考文献
1.《ADO.NET数据库访问技术案例式教程》 2006柴晟
2.《SQL Server 2005实例教程》2008 李立功
3.《C# 2.0 程序设计教程》 2005 郑宇军
毕业设计指导教师评价:
年 月 日
毕业设计指导系部评定:
年 月 日
