人事管理系统数据库课程设计报告Word文档格式.docx
《人事管理系统数据库课程设计报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《人事管理系统数据库课程设计报告Word文档格式.docx(28页珍藏版)》请在冰点文库上搜索。
编号,账号,权限,密码
企业领导人:
编号,账号,密码,权限
b)处理要求:
该系统主要是针对简化公司人事管理工作,主要的使用对象是公司的人事部门和一些部门领导者。
通过研究我们发现一些公司一直以来使用传统人工的方式管理人事档案,这种管理方式存在着许多问题,如:
效率低、保密性差,另外时间一长,将会产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难,而且容易丢失。
有些使用数据库管理的系统功能做的不是很好,不是不够智能就是操作复杂,一般的员工根本就不会使用,总之就是基本上都存在各方面的缺陷。
c)安全性要求
1、系统应该设置访问用户的用户账号是否合法,并且要求合法账户使用自己的密码登陆该系统,保证自己的账户不被他人使用。
2、系统应对每个用户设置一定的权限,如有些用户可以修改数据库中的数据而有些是不能修改的。
权限的授予是更根据管理员来设置的,有一个专门的设置窗口。
d)完整性要求
1、各种信息记录的完整性,信息记录不能为空;
2、各种数据之间的相互依赖的正确性。
3、相同的数据在不同的记录中的一致性。
1.系统功能的设计和划分
根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下4个子系统:
(1)管理员子系统
输入自己的用户名和密码就可以进入人事管理系统的主界面,管理员基本上可以对主界面的所有的信息进行操作,其主要的和其它的用户的区别就是可以对主界面中的用户管理进行添加删除和修改,授予权限等操作。
(2)员工查询系统
该系统主要是针对各部门的管理者设计的,可以根据员工的个人信息和基本信息进行查询,查询的条件可以是多个也可以是单个,查询结果是员工的全部信息。
(3)领导者子系统
在登录界面中输入自己的用户名和密码就可以进入主界面,在这其中可以对主界面中的基础信息管理中的数据基础进行操作。
也可以对所有的员工信息进行查询和系统管理员的区别就是不能添加系统用户。
主要架构图如下图1所示:
图1系统架构图
经上述分析,我们得到了对于该系统的基本要求和系统模块的划分,综上,我们对管理员子系统,员工查询子系统,部门领导查询子系统,企业领导者查询子系统,在需求分析中形成的数据流图如下:
2.数据流图
(1)员工查询子系统
员工查询子系统的数据流图如图1所示。
图1员工查询子系统的数据流图
(2)领导者子系统
领导者子系统的数据流图如图2所示。
图2部门领导者子系统
(3)管理员子系统如图3所示:
管理员子系统的数据流图如图3所示。
图3管理员子系统
3.数据字典
人事管理信息系统中各实体及联系的数据字典如下表。
职工基本信息表如表1所示:
表1职工基本表
字段名
存储代码
类型
长度
备注
员工编号
ID
字符型
5
职工姓名
StuffName
20
出生日期
Birthday
日期型
-
年月日
年龄
Age
数字型
2
文化程度
Kultur
14
性别
Sex
4
民族
Folk
8
身份证号
IDcard
单位工作时间
Workdate
—
工龄
WorkLength
职工类型
Employee
职务类型
Business
工资类别
Laborage
部门类别
Branch
职称类别
Duthcall
Phone
毕业学校
School
24
主修专业
Speciality
月工资
M_pay
flot
家庭地址
Address
50
银行账户
Bank
政治面貌
Visage
10
群众、党员、团员
最高学历
Kurtul
6
高中、大学、研究生等
婚姻状况
Marriage
已婚、未婚
参加工作时间
Workday
专业
毕业院校
家庭关系表如下图表2所示:
表2家庭关系表
编号
职工编号
Sut_ID
家庭成员名称
LeaguerName
与本人关系
Nexus
工作单位
WordUnit
职务
BirthDate
100
个人简历表如下表3所示:
表3个人简历表
容
Memo
文本型
培训表如下表4所示:
表4培训表
培训方式
TrainFashion
开始时间
BeginDate
结束时间
EndDate
培训专业
培训单位
TrainUnit
30
培训容
KulturMemo
费用
Charge
浮点型
效果
Effect
奖惩表如下表5所示:
表5奖惩表
奖惩种类
RPKind
奖惩时间
RPDate
批准人
SealMan
撤销时间
QuashDate
撤销原因
QuashWhys
登录表如下表6所示:
表6登录表
操作员编号
操作员名称
Name
操作员密码
Pass
工作简历表如下表7所示:
表7工作简历表
部门
三、概念设计
1.局部E-R图的设计
局部E-R图的设计如图1~4所示。
员工查询的E-R图如下图1所示:
图1员工查询的局部E-R图
领导者子系统的局部E-R图如下图2所示:
图2领导者子系统的局部E-R图
管理员子系统的局部E-R图如下图3所示:
图3管理员子系统的局部E-R图
2.总体E-R图的设计
人事管理系统的总体E-R图如图10所示。
图10人事管理系统总体设计E-R图
四、逻辑设计
1.将概念模型转换成关系模型
以下是人事管理系统的关系模型:
(1)职工基本信息(员工编号,出生日期,名族,身份证号,政治面貌,最高学历,婚姻状况,参加工作时间,专业,毕业学校,姓名,性别,职称,)
(ID,Birthday,Folk,IDcard,Visage,Kurtul,Marriage,Workday,Speciality,School,Name,Sex,EmployeeName,Tel)
(2)家庭关系信息(编号,职工编号,家庭成员名称,与本人关系,出生日期,政治面貌)
(ID-J,ID,LauguerName,Nexus,BirthDay,Visage)
(3)培训信息(职工编号,培训名称,起始时间,培训地点,培训成绩)
(ID,Stu-Name,Stu-date,Stu-site,Stu-Score)
(4)奖惩信息(职工编号,奖惩种类,奖惩时间,批准人)
(ID,Rpkind,RPDate,SealMan)
(5)个人简历信息(编号,职工编号,容)
(ID,Sut_ID,Memo)
(6)工作简历信息(编号,职工编号,开始时间,结束时间,工作单位,职务)
(ID,Sut_ID,BeginDate,EndDate,WordUnit,Branch,Business)
(7)登录信息(操作员编号,操作员名称,操作员密码)
(ID,Name,Pass)
2.子模式的设计
针对不同的应用需求,分别设计对应的子模式。
(1)员工基本信息查询
员工查询信息视图(员工编号,出生日期,名族,身份证号,政治面貌,最高学历,婚姻状况,参加工作时间,专业,毕业学校,姓名,性别,职称,)
View_Employee_toManagement(ID,Birthday,Folk,IDcard,Visage,Kurtul,Marriage,Workday,Speciality,School,Name,Sex,EmployeeName,Tel)
(2)员工家庭关系查询
员工家庭关系查询视图(编号,职工编号,家庭成员名称,与本人关系,出生日期,政治面貌)
View_Relation_toManagement(ID-J,ID,LauguerName,Nexus,BirthDay,Visage)
(3)系统用户信息查询
登录信息查询视图(操作员编号,操作员名称,操作员密码)
View_User_toManagement(ID,Name,Pass)
3.优化和评价模式
优化模式主要有一下几种方法:
(1)查询语句优化:
避免过多的表关联,注意where中的字段顺序,先过滤有索引的,能尽量缩小数据围的等。
(2)索引优化:
合理分析并设置、调整索引。
(3)表结构优化:
如果数据量过大,纵向或者横向拆分表。
纵向拆,将前n个字段放在一个表,后面m个放另一个表。
横向:
满足一定条件的数据放一个表,比如公司员工特别多,男雇员放一个,女雇员放一个表。
存储方式优化:
通过不同的存储空间或者表分区,将数据存放在不同的存储区域,达到充分利用IO的目的。
功能评价:
功能评价主要是针对需求分析结果,检查规化后的关系模式是否支持用户的所有应用要求。
我们设计的人事管理系统基本上实现了用户的一些简单的要求,如对系统用户的删除、权限的修改、添加,对员工信息的查询、修改、删除和添加,还有就是根据用户的统计条件对数据库中的员工人数进行统计。
其中,系统管理员只有一个,它主要是用来添加和删除系统用户信息和权限的授予,另外就是部门领导者可以查看员工信息,对它进行查询操作。
性能评价:
对于目前得到的数据库模式进行性能评价是比较困难的,因为缺乏有关的物理设计因素和相应的评价手段。
由于本系统一般是用于小型的公司,所以操作的数据量并不是很大,所以性能没有什么优化的地方,对数据主要的操作就是删除、添加、修改等操作。
四、物理设计
1.关系模式存取方式选择
人事管理系统是一个多用户共享系统,对同一个关系要简历多条存取路径才能满足多用户的多种应用要求。
数据库管理系统一般提供多种存取,常用的存取方法有三种:
一是索引方法;
第二类是聚簇方法,第三类是Hash方法。
索引是数据库中经典的存储方法,使用最普遍。
我们应用的数据库管理系统SQlServer2005在数据表建立过程中对逐渐自动创建了索引。
2.确定数据库的存储结构
确定数据库物理结构主要是指确定数据的存放位置和存储结构,包括确定关系、日志、备份等的存储安排和存储结构,确定系统配置等。
有多个磁盘的计算机,可以将表和索引放在不同的磁盘上,查询两个磁盘驱动器并行工作,可提高物理I/O读写效率。
我们组员觉得该系统其实一般应用在很小型的企业,根本就没有涉及任何多数据的操作,也不会让系统死机或者其它由于数据操作复杂用户使用太多而带来的一系列问题,所以我们的存储结构没有进行很多的设计,一般都是开发是系统默认的存储结构。
五、系统实现
1.建立实际数据库结构
根据以上需求分析、概念设计、逻辑设计、物理设计等各个阶段的分析与设计,我们进行了系统的开发,DBMS选用SQLServer2005。
(1)数据表的创建脚本
a)创建“基本信息”表
createtabletb_Stuffbusic
(
IDvarchar(5)primarykey,
StuffNamevarchar(20),
Folkvarchar(20),
Birthdaydatetime,
Ageint,
Kulturvarchar(14),
Marriagevarchar(4),
Sexvarchar(4),
Visagevarchar(14),
IDCardvarchar(20),
workdatedatetime,
WolkLengthint,
Employeevarchar(20),
Businessvarchar(10),
Laboragevarchar(10),
Branchvarchar(14),
Duthcallvarchar(14),
Phonevarchar(14),
Handsetvarchar(11),
Schoolvarchar(24),
Specialityvarchar(20),
GraduateDatedatetime,
YAddressvarchar(50),
Photoimage,
BeAwarevarchar(30),
Cityvarchar(30),
M_Payfloat,
Bankvarchar(20),
Pac_Bdatetime,
Pact_Edatetime,
Pact_Yfloat
);
b)创建“家庭关系”表
createtabletb_WordResume
Sut_IDvarchar(5),
BeginDatedatetime,
EndDatedatetime,
WordUnitvarchar(24),
Businessvarchar(14)
c)创建“奖惩”表
createtabletb_RANDP
RPKindvarchar(20),
RPDatedatetime,
SealManvarchar(10),
QuashDatedatetime,
QuashWhysvarchar(50)
d)创建“个人简历”表
createtabletb_Individual
Memotext
e)创建“培训记录”表
createtabletb_TrainNote
TrainFashionvarchar(20),
Specilityvarchar(20),
TrainUnitvarchar(30),
KulturMemovarchar(50),
Chargefloat,
Effectvarchar(20),
2.实验数据示例
1.输入数据设计
(1)插入员工基本信息:
Insertintotb_StuffBusicvalues(0001,*明,汉族,1980/5/6星期二,28,高中,未,男,无,220,2004/5/6星期四,正式员工,经理,固定工资,JSP部门,专家,,135,XX学校,计算机,2004/5/6星期四,,NULl,省,市,2000,200,2007/3/8星期四,2008/3/7星期五,1,NULL);
(2)插入员工培训信息:
Insertintotb_TrainNotevalues(0001,0001,全天培训,2008/1/12星期六,排版,一*公司,图书排版,100,很好);
(3)插入员工家庭关系信息:
Insertintotb_Familyvalues(0001,0001,某某,爸爸,1875/5/5星期三,ZZ公司,总经理,无,525);
2.查询设计
(1)查询员工基本信息:
Select*
Fromtb_StuffBusic
(2)查询员工家庭关系信息:
Fromtb_Family
(3)查询员工培训信息:
Fromtb_TrainNote
3.修改数据设计
(1)修改系统用户密码信息:
updatetb_login
setpass='
111'
whereName='
;
(2)修改系统用户用户名信息:
updatetb_login
setName='
wherepass='
4.删除数据设计
(1)根据员工姓名删除员工基本信息:
Delete*
Fromtb_stuffbusic
WhereStuffName=’*明’;
(2)根据用户名删除系统用户信息:
Fromtb_Login
WhereName=’111’;
3.数据库应用程序开发
数据库应用程序的开发采用了C#开发技术。
主要模块的程序实现界面如图1~7所示。
登录主界面如下图1所示:
图1登录主界面
登录后的主界面如下图2所示:
图2登录后主界面
人事资料查询界面如下图3所示:
图3人事资料查询界面
人事档案浏览界面如下图4所示:
图4人事资料浏览界面
管理员对用户的设置如下图5所示:
图5用户设置界面
根据多种统计条件对人事资料统计如下图6所示:
图6人事资料统计界面
数据基础设置添加删除如下图7所示:
图7基础信息设置界面
六、总结
试运行及调试这个阶段的工作主要是实际运行人事管理系统应用程序,进入人事管理系统登录界面,输入正确的用户名和口令,单击登录进入主菜单。
在系统设计的前阶段,虽然做了一些功能的预测,但是仅仅只是做了一些简单的构想,且在估计过程中,做了许多简化和假设,并没有注意到很多细节性的东西,可能在最后实现的时候没有把功能做出来。
本次课程设计的容就是设计一个人事管理系统,总的来说设计过程中遇到了很多困难,但是在组员的研究下都一一解决了。
以前在书上学到的都只是纸质上面的东西,没有应用到实际上面,也没有系统性的在一起运用过学的都很零散。
但是通过这次课程设计我们把这学期所学的东西都很好的总结在一起,并且也学到了很多书本上没有的知识,特别是一些C#语句的书写格式和一些VisualStudio2010的基本使用方法,一些系统函数、类的使用情况。
虽然以前学过C#的相关容,但是并没有深入研究,都停留在表面感觉这次课程设计学到的东西都比以前学C#时学到的东西多。
随