广播电视大学计算机信息管理专业数据库应用课程设计报告人事档案管理系统一、系统需求及功能说明Microsoft office Access是比较流行的关系型数据库管理系统之一。
数据库对象是由若干表、查询、窗体、报表、页、宏和模块等对象及对象的集合组成的,这些集合的组合丰富和增强了Access数据库的功能。
现要求用Microsoft office Access设计一个“人事档案管理系统”,用于管理一个企业、各部门基本信息及其通讯录各信息。
每个进入系统的用户必须经过登录才能访问,为安全起见,必须拥有用户名(admin作为用户名)和密码admin才能进入。
在系统中,系统管理员拥有几乎所有的操作权力,即可以添加、修改、查询所有人员的信息和删除其他人员的记录等功能后退出,但不能删除自己的登录信息。
管理员登录时采用无差别登录,然后在数据库中设置权限,在操作时先从数据库中读取用户的权限,然后根据权限赋予相应的操作权力。
二、数据库设计说明对于比较复杂的系统,其数据库由比较多的表所组成,每个表可能会涉及到比较多的数据项,而各个表之间又可能存在较复杂的关系。
我们所设计的“人事档案管理系统”是比较简单的演示系统,只有两个表,一个是用户的“用户表(密码表)”,另一个是“人员基本信息表”。
二、1 登录密码表“密码表”中保存有用户的登录名、密码和权限。
我们用字符串“admin”表管理员权限,其初始密码与用户名相同,正确登录后,管理员可修改其默认的密码。
管理员用户是特殊设立的用户,可以是部门主任,也可以是管理阶层的管理员,如:主管或中层领导等担当。
二、2人员基本信息表“人员基本信息表”中记录了各部门人员的基本信息及其通讯信息,包括的数据项有编号、姓名、出生日期、籍贯、性别、族别、婚姻、参加工作日期、党团情况、基本工资、奖惩情况、备注等。
下面我们进入数据库设计中的概念设计、逻辑设计阶段和实现阶段。
1、概念设计(图 1 )(图 2 )附(图1、图2 )人员基本信息管理系统ER图2、逻辑设计根据ER图转换成基本表的思想,即每个实体转换成基本表,多对多的联系转换成基本表,而1对多的联系根据实际需要可以转换或不转换为基本表,按照附(图1、图2)所示的ER图,该系统的基本表应为2个,分别为:用户表(用户名、密码、权限)人员基本信息表(编号、姓名、出生日期、籍贯、性别、族别、婚姻、参加工作日期、党团情况、基本工资、奖惩情况、备注。
)3、建立数据库和基本表在SQL中建立空的数据库“人事档案管理系统”,然后建立如上所述的基本表,各个基本表的设计视图如附(图3、图4)所示。
(图3)用户表设计视图(图4)人员基本信息表设计视图三、系统的功能模块设计1、用户登录用户必须经过登录验证才能进入系统。
前面讲到,其初始用户名(admin)与密码相同,正确登录后,可修改其默认密码。
管理员用户是建表时特殊设计的用户,由设计人员告诉其用户名和密码。
2、用户信息修改正确登录后的管理员或人员可根据编号、姓名、对人员基本信息表进行修改,通过结果窗口得到修改的结果信息。
3、添加人员记录管理员用户可添加人员基本信息,每个员工至少要有编号和姓名等基本信息,每添加一个员工基本信息记录,需要由系统同时在用户登录表中添加一条登录信息,并给定初始的登录用户名、密码和权限。
员工记录中的其信息可由员工自己登录系统后进行添加或修改。
4、删除人员记录对于少数由于特殊原因调动,转型或辞职的员工记录,可由管理员将其记录进行删除,同时也要删除其登录用的登录记录。
5、取消退出用户记录操作完成人员基本信息后,存入数据表退出。
(图5所示)(图5)系统模块功能图四、构建用户登录模块在正式进入管理系统之前,需要一个登录验证模块,用户通过在编辑框中输入用户名和密码,按“登录”按钮,经程序验证(数据库的登录密码表中有这样的用户名和密码)后,进入系统的主模块,完成相应的功能。
1、构建登录对话框界面在前面建立的“人事档案管理系统”工程中,系统已经生成了一个对话框,这个对话框是程序运行时首先启动的,我们改造它来作为用户登录对话框。
用于提示用户输入“用户名”和“密码”,再加上两个编辑框和两个按钮控件,调整其大小,如图6所示。
(图6用户登录对话框)2、设计主窗口模块从方便实际的角度来考虑,我们将主窗口设计成如图7所示的对话框。
(图7“人事档案管理系统”主窗体)五、实现系统各功能模块1、登录密码模块建立登录密码窗口,如图8所示(图8登录密码窗体)Option Compare DatabasePrivate Sub 登录_Click()If IsNull(用户名) = False ThenIf DLookup("[密码]", "用户表", "[用户名]=""" & 用户名& """") = 密码Then DoCmd.CloseDoCmd.OpenForm "系统主窗体"Else用户名= ""密码= ""用户名.SetFocusMsgBox "用户名或密码错误!", vbCriticalEnd IfEnd IfEnd SubPrivate Sub 命令8_Click()On Error GoTo Err_命令8_ClickDoCmd.QuitExit_命令8_Click:Exit SubErr_命令8_Click:MsgBox Err.DescriptionResume Exit_命令8_ClickEnd Sub2、用户信息修改正确登录后的管理员或人员可根据用户名、密码、进行修改,通过窗口得到系统操作下的系统用户结果信息,点击用户基本信息录入打开一个新的对话框---添加、修改、删除、取消用户基本信息情况表。
如图9、10、11、12所示(图9系统用户记录窗体)(图10添加用户记录窗体)(图11修改用户记录窗体)(图12删除用户记录窗体)Option Compare DatabasePrivate Sub 修改系统用户数据_Click()On Error GoTo Err_修改系统用户数据_ClickDoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuV er70 Exit_修改系统用户数据_Click:Exit SubErr_修改系统用户数据_Click:MsgBox Err.DescriptionResume Exit_修改系统用户数据_ClickEnd SubPrivate Sub 关闭修改系统用户数据_Click()On Error GoTo Err_关闭修改系统用户数据_ClickDoCmd.CloseExit_关闭修改系统用户数据_Click:Exit SubErr_关闭修改系统用户数据_Click:MsgBox Err.DescriptionResume Exit_关闭修改系统用户数据_ClickEnd SubOption Compare DatabasePrivate Sub 命令7_Click()End SubPrivate Sub 删除系统用户_Click()On Error GoTo Err_删除系统用户_ClickDoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuV er70 DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuV er70 Exit_删除系统用户_Click:Exit SubErr_删除系统用户_Click:MsgBox Err.DescriptionResume Exit_删除系统用户_ClickEnd SubPrivate Sub 关闭系统用户窗体_Click()On Error GoTo Err_关闭系统用户窗体_ClickDoCmd.CloseExit_关闭系统用户窗体_Click:Exit SubErr_关闭系统用户窗体_Click:MsgBox Err.DescriptionResume Exit_关闭系统用户窗体_ClickEnd SubPrivate Sub 修改系统用户数据_Click()On Error GoTo Err_修改系统用户数据_ClickDim stDocName As StringDim stLinkCriteria As StringstDocName = "修改系统用户数据"stLinkCriteria = "[密码]=" & "'" & Me![密码] & "'"DoCmd.OpenForm stDocName, , , stLinkCriteriaExit_修改系统用户数据_Click:Exit SubErr_修改系统用户数据_Click:MsgBox Err.DescriptionResume Exit_修改系统用户数据_ClickEnd Sub3、添加、保存、删除、取消人员记录在工作区系统主窗口视图基本数据管理下,点击人员基本信息录入打开一个新的对话框---添加人员基本信息情况表:如图13所示(图13添加保存人员记录窗体)Option Compare DatabasePrivate Sub 添加人员记录_Click()On Error GoTo Err_添加人员记录_ClickDoCmd.GoToRecord , , acNewRecExit_添加人员记录_Click:Exit SubErr_添加人员记录_Click:MsgBox Err.DescriptionResume Exit_添加人员记录_ClickEnd SubPrivate Sub 保存记录_Click()On Error GoTo Err_保存记录_ClickDoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuV er70Exit_保存记录_Click:Exit SubErr_保存记录_Click:MsgBox Err.DescriptionResume Exit_保存记录_ClickEnd SubPrivate Sub 删除记录_Click()On Error GoTo Err_删除记录_ClickDoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuV er70DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuV er70Exit_删除记录_Click:Exit SubErr_删除记录_Click:MsgBox Err.DescriptionResume Exit_删除记录_ClickEnd SubPrivate Sub 取消记录_Click()On Error GoTo Err_取消记录_ClickDoCmd.CloseExit_取消记录_Click:Exit SubErr_取消记录_Click:MsgBox Err.DescriptionResume Exit_取消记录_ClickEnd Sub至此,人事信息管理系统的设计工作全部完成,通过测试后,可以投入使用。