数据库课程设计Word格式.docx
《数据库课程设计Word格式.docx》由会员分享,可在线阅读,更多相关《数据库课程设计Word格式.docx(19页珍藏版)》请在冰点文库上搜索。
如何有效地管理宿舍已成为信息时代的大势所趋,在这种情况下,我们开发出来了宿舍管理系统。
学生可以根据宿舍管理系统查询自己宿舍的卫生情况,个人信息,室友信息,以及宿舍通知等,并能及时的修改自己的联系电话,方便室友和宿管的联系。
宿管可以每天将卫生情况记录到宿管系统,并可以通过管理系统评定优秀良好和不及格宿舍。
宿舍管理员可以通过宿舍管理系统完成学生床位的安排和删除,输入宿舍重要的通知,比如停水电等重要的通知,录入学生信息,并且还能查看学生基本信息,便于联系学生。
软件相关功能的说明:
(1)学生的登陆界面:
登录后可以查看最近的宿舍通知,查看室友的基本信息,以及基本信息。
有以下基本的功能板块:
修改联系电话
考虑到现在学生手机号换的频繁,故特增加修改联系电话的功能,学生可以即时的修改自己的联系电话,便于自己和宿管的联系。
卫生情况
学生可以查看每天的卫生情况,提高同学们打扫卫生的积极性,以此养成一个良好的卫生习惯。
个人信息修改:
此功能的出现是为了应对宿舍可能出现的人员流动现象,同时也可以用于大学新生,大四毕业生的进入、离开宿舍的相关管理。
(2)宿舍管理员的登陆界面:
这个界面能实现的功能较多是本软件的核心所在,可以根据公寓管理系统来查看各公寓学生能入住的基本信息,也可以根据班级来查看学生入住的基本信息。
同时,宿管还可以查看上次或这次卫生检查过后的评分情况,便于宿管老师进行评比管理。
学生用户设置
新增学生用户,记录学生的院系、专业、班级、学号、姓名等重要的信息,用户增加过后,该学生即可登录宿舍管理系统。
管理员设置
新增宿舍管理员,便于宿舍的管理。
删除学生用户
为了便于宿舍管理人员删除学生用户,此项功能提供了两个选择,宿管可以按照院系来删除,也可以按照学生的学号来删除。
删除管理员
删除管理员后,该管理员也即将被取消了登录宿舍管理系统的权限。
新增公寓设置
宿舍管理员既可以增加公寓,也可以增加公寓楼区或楼栋本系统的楼栋统一为如下标准:
每栋有七层高,每层有30间宿舍,每间宿舍为标准的四人房。
删除公寓
操作删除时,可以删除整栋公寓、楼区、删除时与该删除项(公寓、楼区或整栋楼)相关的的一些信息也同时将被删除。
学生床位安排:
将给未安排床位的学生安排床位,该操作中显示的床位始终是空床位。
删除学生床位
学生床位删除后,该床位置空,此时床位可以安排给其他的学生。
添加检查记录:
宿管可以每天将宿舍的卫生情况按宿舍登录,便于学生登录宿舍管理系统进行查看。
通知更新:
宿管可以输入一些重要的通知,及时提醒学生一些重要的事情。
相关数据库
本数据库采用的是ACCESS数据库,并用Active数据对象ADO这种新的数据库访问系统来访问ACCESS数据库。
我对此建立了三个表,分别是:
(1)学生基本信息表格:
该表格包含了学生的学号(学号是唯一的)、姓名、籍贯、院系、专业、年级、联系电话等基本信息。
表(学生基本信息)与(公寓)通过学号来联系。
(2)公寓表:
保存公寓名称、楼区、楼区性质、宿舍、床号信息、同时如果某学生安排了床位,则会在相应床位出现学生的学号处为空值,表示尚未安排学生。
该表与学生基本信息表通过学号来联系。
(3)卫生表:
该表项记录公寓名、楼区、宿舍、四个域的值唯一的确定了一间宿舍。
而门窗、床铺、地板、阳台、评分等级则记录该宿舍的检查情况。
该表与公寓之间通过(公寓名、楼区、楼栋、宿舍)四个属性值联系。
(4)宿管表:
该表相对独立,与其他的表没有联系。
其记录宿管的工号和密码、密码可以为空。
关于通知的处理:
该系统的通知保存在Notify.txt文件中,通过文件读写的顺序访问模式来进行对其的读写操作。
考虑到系统的稳定性和运行效率,只保留最后一次的通知,而将以前的通知清除了。
部分相关代码:
1.用户类型判断
在数据库中建了学生表,管理员表。
在添加人员时有两种默认级别。
管理员、学生。
管理员拥有对数据库操作的一切权限。
普通用户只有普通的查看,信息更换等。
没有删除等操作功能。
前用户成功登录时会显示其登陆类型主要代码如下:
设置当前控件连接的数据库
DimproviderAsString
DimdatasourceAsString
provider="
provider=Microsoft.jet.oledb.4.0"
datasource="
datasource="
&
App.Path&
"
\DB.mdb"
WithAdodc1
.Mode=adModeReadWrite
.ConnectionString=provider&
;
"
datasource
.CommandType=adCmdTable
.RecordSource="
yonghu"
.Refresh
.Recordset.MoveFirst
EndWith
对用户进行判断
IfText1.Text="
Then
MsgBox"
请输入用户名!
48,"
提示"
ExitSub
EndIf
Adodc1.Recordset.Find"
用户='
Text1.Text&
'
IfAdodc1.Recordset.EOF=FalseAndText2.Text=Trim(Adodc1.Recordset.Fields("
pass"
))Then
main.Text1.Text=Adodc1.Recordset.Fields("
级别"
)
main.Text2.Text=Adodc1.Recordset.Fields("
用户"
main.Show
UnloadMe
Else
Text1.Text="
Text2.Text="
密码或用户名错误!
2.添加用户即添加使用该管理软件的用户。
软件默认为两个级别:
管理员拥有对此软件管理操作等一切的权力。
普学生用户,只有普通的查看、查询、修改等权力。
没有对记录删除等权力。
在添加用户时通过管理员的相关操作进行。
然后输入此用户的用户名和密码和相关信息即可!
添加用户主要代码:
IfCommand1.Caption="
添加"
Command2.Enabled=False
Command5.Enabled=False
Command6.Enabled=False
Command1.Caption="
确定"
Command3.Caption="
取消"
Adodc1.Recordset.AddNew
Option1.Enabled=True
Option2.Enabled=True
Text1.Enabled=True
Text2.Enabled=True
Text3.Enabled=True
Text2.Text="
ElseIfText1.Text="
MsgBox"
用户名不能为空!
ElseIfText2.Text="
密码不能为空!
ElseIfText2.Text<
>
Text3.TextThen
密码两次需一致!
Else
Command2.Enabled=True
Command3.Enabled=True
Command5.Enabled=True
Command6.Enabled=True
编辑"
Adodc1.Recordset.Update
Text1.Enabled=False
Text2.Enabled=False
Text3.Enabled=False
Text4.Enabled=False
Option1.Value=False
Option2.Value=False
Option1.Enabled=False
Option2.Enabled=False
EndIf
删除操作可以把当前记录删除掉。
一经删除即不可以在恢复。
所以在操作前要想好。
删除操作部分代码:
IfAdodc1.Recordset.RecordCount=1Then
If(MsgBox("
你真的想删除当前记录吗?
vbOKCancel,"
系统提示"
))=vbOKThen
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveFirst
Adodc1.Refresh
3.公寓设置
公寓设置可以说是本程序中一关键部分。
因为所有的设置都在此进行。
包括公寓添加、修改、删除。
寝室的添加、修改、删除以及班级的添加、修改和删除操作。
只有正确的对这些设置进行添加修改,才能输入正确的记录。
这里主要涉及到的问题是datagrid的显示,以及treeview及时形成新的结构。
还有一些就是对表记录的复杂操作。
在点击sstab各版的时候,要在这时重新生成寝室设置中的树型结构,
SelectCasePreviousTab
Case0
Callstartree1
Case1
Combo1.Clear
DimIAsInteger
I=1
IfAdodc1.Recordset.RecordCount<
0Then
DoWhileI<
Adodc1.Recordset.RecordCount
Combo1.AddItem(Adodc1.Recordset.Fields("
公寓名称"
))
Adodc1.Recordset.MoveNext
I=I+1
Loop
Case2
EndSelect
EndSub
4.连接数据库代码:
PubliccnnAsNewADODB.Connection'
新建一个数据源
Publicqy1AsNewADODB.Recordset'
数据一个记录集
Publicqy2AsNewADODB.Recordset'
SubMain()
tkOpenAccessDBApp.Path&
\base.mdb"
'
连接数据库
Ifqy1.State=adStateOpenThen'
表状态
qy1.Close
qy1.Open"
select*from登陆"
cnn,adOpenStatic,adLockReadOnly,adCmdText'
查询表内是否有数据
Ifqy1.RecordCount=0Then
Setqy1=cnn.Execute("
insertinto登陆values('
admin'
'
超级管理员'
)"
)'
表内无数据执行此语句新建用户
Form3.Show
PrivateSubtkOpenAccessDB(_
tkFileNameAsString,_
OptionaltkUserIDAsString,_
OptionaltkPasswordAsString_
)'
连接数据库参数
OnErrorGoTotkFinish
cnn.Open"
Provider=Microsoft.Jet.OLEDB.4.0;
_
DataSource="
tkFileName&
Mode=ShareDenyNone;
ExtendedProperties=;
JetOLEDB:
Systemdatabase=;
RegistryPath=;
DatabasePassword=;
EngineType=5;
DatabaseLockingMode=1;
GlobalPartialBulkOps=2;
GlobalBulkTransactions=1;
NewDatabasePassword=;
CreateSystemDatabase=False;
EncryptDatabase=False;
Don'
tCopyLocaleonCompact=False;
CompactWithoutReplicaRepair=False;
SFP=False;
tkUserID,_
tkPassword
ExitSub
tkFinish:
MsgBoxErr.Description
End
EndSub
5.主窗体界面与代码
PrivateSubabou_Click()
frmAbout.Show
PrivateSubcmai_Click()
Ifadmin=FalseThen
你没有管理本功能的权限,请与管理员联系!
Ifmdi=TrueThen
Form10.Show
每次只能打开一个窗口,请关闭正在打开的窗口!
vbInformation,"
不允许当前操作!
PrivateSubbak_Click()
Form9.Show
PrivateSubexit_Click()
Ifmdi=FalseThen
请保存数据!
End
PrivateSubgongzi_Click()
Form5.Show
PrivateSubhuifu_Click()
PrivateSubkecheng_Click()
Form7.Show
PrivateSubkfsycx_Click()
Form21.Show
PrivateSubkgsyap_Click()
Form20.Show
程序的相关截图:
1.登陆页面
:
2.管理员登陆界面
3.进入程序后:
管理员界面:
管理员相关操作:
数据库的相关截图:
小结
系统的功能
该系统主要包括:
查询、修改信息、设置楼区、分配寝室发布信息等。
通过对宿舍活动各环节产生的数据进行处理,将为上级管理层提供一系列有关宿舍情况的动态信息,使宿舍管理工作规范化、制度化、程序化,促进了宿舍管理的基础水平,避免了宿舍管理的随意性,提高信息处理的速度和准确性。
本系统以Access作为数据库平台和开发工具,应用结构化设计方法与面向对象的程序设计技术开发而成。
在整个开发过程中采用了生命周期法,进行了系统需求分析
、总体结构设计、详细设计、系统实施和系统运行维护。
编写系统的经验与体会
在宿舍管理系统的实际开发工作之后,辛苦之余,带来的收获和经验是巨大的:
1)各种编程技术是相通的,以前曾经学习过一个学校图书管理信息系统,采用的技术与宿舍管理系统的技术差不多,这也意味着,采用同样的技术,也可以实现销售管理信息系统、采购管理信息系统、酒店管理信息系统等等其它管理信息系统的开发工作。
2)软件复用。
因为各种管理类软件的技术差不多,所以很多设计方法、流程、甚至源代码都可以复用,减少工作量。
3)前期的需求分析和软件设计工作非常重要,特别整体框架的搭建要多花功夫。
在收获之余,同时,也发现存在一些需要注意的地方:
1)需求分析如果没有做好,会给开发带来很多无用功,在宿舍管理系统开发的工作过程中,曾多次向宿舍管理部门的老师咨询具体的需求;
为此,开发工作被数次停下,甚至返工重来。
所以,做好需求分析至关重要。
工作量非常大。
所以,错误特别是一些严重的错误,最好在用户正式使用前被发现,及时更改。
2)测试不可轻视。
因为一旦测试没有发现的错误到用户那里才被发现,再返工修改的
3)在与用户打交道的过程中,在实际开发设计中,也发现了许多知识的不足和技术的欠缺。
该系统系统的局限性与展望
虽然本系统在整体上设计较为成功,达到了相关的要求但由于系统开发在时间上比较仓促以及本人水平有限,导致该系统仅为应用范围较小的单机系统,没有与上级管理系统中的财务系统、人事系统等相结合,缺少对现在流行的网络办公室概念的技术支持。
因而,目前该系统还是十分稚嫩的,不够成熟,有待于在实践中进一步改进和提高。
随着校园网络化的迅猛发展,实现学生宿舍的信息化管理以及和学校其它管理系统的无缝连接,必将是一种趋势。
这也将极大的改善高校后勤管理工作的效率,节约大量人力、物力和财力;
同时,将每个学生的生活起居纳入系统的管理计划中,也可以为学生们创造一个优质、有序、高效地生活环境。
综上所述,各类管理软件的网络化、集成化、智能化、一体化是今后的发展方向。
参考文献:
1.沈大林。
中文VisualBisic6.0人民邮电出版社
2.萨师煊王珊.数据库系统概论(第三版)高等教育出版社
3.VisualBisic6.0控件时尚编程百例。
机械工业出版社
4.贾长云陆卫忠可视化编程应用-VisualBasic高等教育出版社
5.谭浩强薛淑斌袁玫VisualBasic程序设计清华大学出版社