当前位置:文档之家› 企业人事管理系统数据库实验报告

企业人事管理系统数据库实验报告

上海应用技术学院课程设计任务书指导教师(签名):教研室主任(签名):2012年12月29 日2012 年月日目录前言 (4)1. 系统目标 (5)2. 系统分析 (6)2.1 系统可行性分析 (6)2.2 安全性、完整性分析 (7)2.3 系统需求分析 (8)2.4 系统功能分析 (8)3. 系统结构设计 (9)3.1 系统概念结构设计 (9)3.2 系统逻辑结构设计 (10)3.3 系统物理结构设计 (11)3.3.1 物理结构 (11)3.3.2 数据库创建 (15)3.3.3 物理实现结果 (17)3.3.4 程序实现 (17)4. 结果与体会 (19)5. 参考文献 (20)上海应用技术学院课程设计报告课程名称数据库原理及应用设计题目实验一企业人事管理姓名专业班级软件工程学号指导教师臧雯日期2012.12.29—2013.1.11 成绩前言随着计算机技术的飞速发展,计算机已深入到各个领域,并且形成了功能强大、覆盖全球的信息传输网络。

各个领域都向系统化、规范化、自动化的方向发展,使得工作效率、工作成绩和生活水平都日益提高。

人事管理是很多厂矿、公司、个体事业单位所须的,人事信息管理系统包括对人事信息的统计、查询、更新、打印输出等,如果靠人,工作量将很大,若公司人数有几万甚至更多,人工统计将变得不可想象,仅一些简单的操作便可及时、准确地通过计算机获得需要的信息。

计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。

计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高人事管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

不同的企业具有不同的人事管理制度,这就决定了不同的企业需要不同的人事管理系统。

经过分析,我们使用SQL Server 2005 和C#开发工具。

系统能够提供对人事信息输入、查询、编辑以及工资设定、查询、修改、算出工资发放各项合计数据;可自主设定条件从而达到对工资数据的多角度查询功能;方便导入、导出数据及输出报表。

财务部门人员以管理员身份登录,对本系统的可登录人员进行管理;实现了财务部门对本单位工资发放系统的集中管理,保证了系统的安全性。

1 系统目标人事管理系统可以应用于支持企业完成人事管理工作,有如下三个方面的目标:1.支持企业实现规范化管理;2.支持企业高效率完成人事管理的日常业务,包括新部门的增加及员工加入时人事档案的建立,员工职务变动、辞退、退休的记录及员工信息的查询和修改等;3.支持企业进行人事管理及相关方面的科学决策并在系统开发总任务的基础上进行该系统的方案设计论证,需要实现以下功能:1)部门信息:a 建立部门的基本信息表,包括:部门编号、部门名称、部门人数等。

b 部门信息的增加,删除,修改。

c 部门系的查询和管理等。

2)员工信息a建立员工基本信息表,包括:员工号、姓名、性别、婚姻状况、政治面貌等;b.员工信息的查询和管理。

在实现系统基本功能的同时,还要求系统能够录入人事的基本资料,在操作上能够完成诸如添加、删除、修改、按各种条件进行查询、新用户的设置及密码修改等方面的工作,基本满足人事日常业务的需要。

人事管理信息系统主要包含员工基本信息,工作情况,学历,职位情况等各方面信息,内容比较简单。

同时还综合了其他系统的功能,总结归纳出所需现有的功能。

主要是为人事信息进行服务,对员工职位的变动、员工资料的查询,统计修改等功能。

总体上说具有编辑、查询、员工管理等功能。

设计的指导思想是一切为用户着想,界面美观大方,操作尽量简单明了,而且作为一个使用的应用程序要有良好的容错性,在用户出现错误操作时能尽量及时地给出警告,以便用户及时改正,使其支持企业实现规范化的管理;支持企业高效率地完成劳动人事管理的日常业务;支持企业进行劳动人事管理及其相关方面的科学决策。

人事管理系统是现代企业管理工作不可缺少的一部分,是适应现代企业制度需求、推动企业劳动人事管理走向科学化、规范化的必要条件。

人事管理系统在现实生活中有很强的实用性,只要设计出一个合理、实用的人事系统,可根据不同的单位的具体使用情况稍加修改,就可以把它应用到实际管理工作中.2 系统分析2.1可行性分析可行性分析是在用户的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。

可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是在对系统目标和环境精心分析的基础上,由于本系统知识面向机关和事业单位内人事信息管理人员和在职人员开发的信息管理系统,尽管这些人员可能没有使用过类似的系统,但是以Windows的友好界面和本系统良好的安全性设置,可以是人事信息管理员在专业人员的指导帮助下迅速掌握系统的操作方法。

本系统对计算机的硬件环境有一定的要求,对计算机的操作系统、内存、主频、外设等都有最低要求,如果低于这个要求将影响到本系统的正常运行。

机关和事业单位的人事信息管理目前还完全以传统的人工管理方式进行管理,耗时多,效率低下并且极容易出现错误。

由于认为失误而造成有形和无形的经济损失时间层出不穷,我们也无法估算出所造成损失的总额。

而利用计算机来实现人事管理以成为适应当今人事管理的方式。

开发一套能满足人事信息管理的软件是十分必要的,实现人事管理的自动化,在减少由于认为失误而造成损失的同时,也可以是认识信息管理部门减少许多费用支出,如实现自动化管理后可以精简人员,减少工资支出等。

由上述三方面的分析可以看出,本系统的开发时机已经成熟,从多种角度考虑开发此系统都是可行的,并且也是十分必要的。

2.2安全性、完整性分析数据库的安全性是指保护数据库,以防止非法使用所造成的数据泄露、更改或破坏。

安全性问题有许多方面,在法律、社会、伦理方面,例如请求查询信息的人是否有合法的权利;法律控制方面,例如计算机机房或者中断是否应该加锁或用其他方法保护;政策方面,确定存取原则允许哪些用户存取哪些数据;运行于技术方面,使用口令时,如何使口令保持秘密;操作系统安全性方面,在主存储器和数据文件用过后,操作系统是否把它们的内容清除掉。

安全性控制的方法有用户的标识和鉴定,存取控制,定义视图,数据加密和审计等,在本系统中的安全性体现在用户的标识和鉴定,例如在登陆界面时,首先会输入账户名称,系统内部记录着所有合法用户的标识,每次用户要求进入系统时,由系统进行核实,通过鉴定后才提供机器上对数据库的使用权。

当你不是该系统的合法用户时,则账号是错误的就无法进入该系统。

就用户存取权限控制而言,在系统登陆界面时会选择是一般用户登陆还是管理员登陆,当为一般用户登陆时,只能查询员工信息和部门信息,而不能对其进行管理。

当以管理员身份登陆时不仅仅可以查询部门和员工的基本信息,也可以对其进行添加、删除、修改等操作。

数据库的完整性是指保护数据库中数据的正确性、有效性和相容性,防止错误的数据进入数据库造成无效操作。

在本系统中对数据类型的约束,包括数据的类型、长度、单位和精度等。

例如规定员工性别的数据类型应为字符型,长度为2.对数据格式的约束例如规定出生日期的数据格式为XXXX.XX.XX。

对取值范围的约束,例如月份的取值范围为1-12月,日期为1-31号。

对空格的约束,例如员工姓名和编号不能为空,但是员工学历即可为空。

实体完整性约白斑病束说明了关系主键(主码)的属性列必须唯一,其职不能为全空或部分为空。

2.3系统需求分析·系统的用户管理:包括用户的添加、删除、密码修改等。

·员工的信息管理:包括员工的基本信息的查询、添加、删除、修改等。

·员工的薪资管理:包括员工的薪资查询、添加、删除、修改等。

·员工的培训管理:包括员工培训计划的查询、添加、删除、修改等。

·员工的奖惩管理:包括对员工才奖惩信息的查询、添加、删除、修改等。

·部门的信息管理:包括部门查询、添加、删除、修改等。

2.4系统功能分析2.4.1.系统功能的描述企业人事管理系统的管理功能是比较简单的,主要实现对员工、部门、员工的薪资、员工奖惩、员工培训等的管理,具体管理功能有添加、修改、删除等。

系统功能布局见系统功能模块图。

2.4.2系统功能模块图图2.4.2 系统功能模块图3 系统设计3.1.数据概念结构设计概念性数据模型关心的是如何完整、正确地反映客观实际情况,并不关心在数据库中如何实现。

这种数据模式能真实地反应用户要求的实际情况,是一种容易被人们理解的直观的数据库结构模式。

同时也是一种相对稳定统一的数据模式,一般情况下很少变动。

概念性数据在用户和设计者之间建立了桥梁,是设计数据库结构的基础。

概念设计中自顶向下的实体分析方法,即常用的实体联系模型(简称E-R模型),对具体数据进行抽象加工,将实体集合抽象成实体类型。

用实体间联系反映现实世界事物间的内在联系。

E-R模型是建立概念性数据模型的有力工具。

1n图3-1-1. E-R图图 3-1-2员工信息属性 图 3-1-3奖惩信息属性图 3-1-4 薪资信息属性图 3-1-5培训信息属性图3-1-6 部门信息属性3.2.数据逻辑结构(关系模式)设计按照E-R图到逻辑关系模式的规则,可得到6个关系,其中带下划线的为关系关键字(即主码)管理员信息(编号,姓名。

权限,密码);员工信息(员工编号,姓名,性别,学历,政治状况,婚姻,出生日期,在职否,进场日期,转正日期,部门编号,职务,备注)部门信息(部门编号,部门名称,部门人数)薪资信息(顺序号,薪资编号,员工编号,基本工资,奖金,福利,总薪资)培训信息(顺序号,培训编号,员工编号,培训天数,培训费用,培训内容)奖惩信息(顺序号,奖惩编号,员工编号,奖惩时间,地点,奖惩原因,备注)3.3数据库物理结构设计3.3.1.物理结构3.1.1.1.管理员物理结构表3.1.1.2.奖惩信息物理结构表3.1.1.3.培训信息物理结构表3.1.1.4.薪资信息物理结构表3.1.1.5.员工信息物理结构表3.1.1.6.部门信息物理结构表3.3.2.创建数据库create database E2gouse E2Create table 部门信息表(ID int identity (1,1) not null,部门编号int not null primary key(部门编号),部门名称varchar (20) not null,部门人数int not null);insert into 部门信息表values('1','人力部',20) insert into 部门信息表values('2','财务部',10)insert into 部门信息表values('3','市场部',30)insert into 部门信息表values('4','生产部',20)insert into 部门信息表values('5','证券部',25)Create table 员工信息表(员工编号int not null,姓名varchar(30) not null,性别varchar(2) not null,出生日期smalldatetime not null,婚姻状况varchar(4) not null,政治面貌varchar(20) not null,学历varchar (20) null,进厂日期smalldatetime null,转正日期smalldatetime not null,部门编号int not null,职务varchar (20) not null,在职否varchar (10) not null,备注varchar(500) null,constraint fn_y foreign key(部门编号) references 部门信息表(部门编号), constraint pk_员工信息表primary key clustered (员工编号asc));insert into 员工信息表values(,' ','男','1990/01/23','已婚','党员','本科','2009/10/10','2009/12/10',2,'会计','在职','')insert into 员工信息表values(,' ','女','1992/04/19','未婚','党员','本科','2010/12/10','2011/02/10',2,'会计','在职','')insert into 员工信息表values(,' ','男','1986/01/23','离婚','党员','研究生','2008/10/10','2008/12/10',1,'部长','在职','')insert into 员工信息表values(,' ','女','1991/01/23','未婚','党员','本科','2009/10/10','2009/12/10',2,'助理','在职','')insert into 员工信息表values(,' ','男','1990/01/23','已婚','党员','本科','2009/10/10','2009/12/10',3,'秘书','在职','')insert into 员工信息表values(,' ','男','1989/01/23','已婚','党员','本科','2009/10/10','2009/12/10',1,'会计','离职','')insert into 员工信息表values(,' ','男','1987/01/23','已婚','预备党员','本科','2009/10/10','2009/12/10',3,'销售','在职','')insert into 员工信息表values(,' ','男','1983/01/23','已婚','党员','博士','2006/10/10','2006/12/10',3,'部长','在职','')insert into 员工信息表values(,' ','男','1990/01/23','未婚','党员','本科','2009/10/10','2009/12/10',3,'销售','在职','')insert into 员工信息表values(,' ','女','1990/01/23','未婚','党员','本科','2009/10/10','2010/02/10',2,'会计','离职','')Create table 培训信息表(Id int identity(1,1) not null,培训编号varchar (20) not null,培训内容varchar (20) not null,员工编号int not null,培训天数int null,constraint fn_qy foreign key(员工编号) references 员工信息表(员工编号),培训费用int not null, constraint pk_培训信息表primary key clustered (id asc)) insert into 培训信息表values(01,'党课学习',1010420201,2,500)insert into 培训信息表values(05,'党课学习',1010420205,2,500)insert into 培训信息表values(06,'党课学习',1010420206,2,500)insert into 培训信息表values(07,'党课学习',1010420207,2,500)Create table 薪资信息表(Id int identity (1,1) not null,薪资编号int not null,员工编号int not null,基本工资decimal (18,2) not null,福利decimal (18,2) not null,奖金decimal (18,2) not null,总薪资decimal (18,2) not null,constraint fn_wy foreign key(员工编号) references 员工信息表(员工编号), constraint pk_薪资信息表primary key (Id))insert into 薪资信息表values(1,1010420201,3000,500,-100,3400)insert into 薪资信息表values(2,1010420202,3500,500,100,4100)insert into 薪资信息表values(3,1010420203,5000,1000,-100,5900) insert into 薪资信息表values(4,1010420204,3000,500,100,3600)insert into 薪资信息表values(5,1010420205,2500,500,-100,2900)insert into 薪资信息表values(6,1010420206,3000,500,-100,3400)insert into 薪资信息表values(7,1010420207,3500,500,0,3900)insert into 薪资信息表values(8,1010420208,6000,1000,0,7000)insert into 薪资信息表values(9,1010420209,4000,500,0,4500)insert into 薪资信息表values(10,1010420210,3500,500,0,4000)Create table 奖惩信息表(Id int identity (1,1) not null,奖惩编号int not null,员工编号int not null,奖惩日期datetime not null,奖惩地点varchar (50) not null,奖惩原因varchar (200) not null,奖惩金额int not null,constraint fn_ey foreign key(员工编号) references 员工信息表(员工编号),constraint pk_奖惩信息表primary key clustered (Id asc))insert into 奖惩信息表values(1,1010420201,'2010/10/10','大唐集团','上班迟到',-100)insert into 奖惩信息表values(2,1010420202,'2010/10/11','大唐集团','加班',100)insert into 奖惩信息表values(3,1010420203,'2010/11/10','大唐集团','上班迟到',-100)insert into 奖惩信息表values(4,1010420204,'2010/12/10','大唐集团','加班',100)insert into 奖惩信息表values(5,1010420205,'2010/10/10','大唐集团','上班迟到',-100)insert into 奖惩信息表values(6,1010420206,'2010/10/10','大唐集团','上班迟到',-100)Create table 管理员信息表(ID int identity(1,1) not null,管理员姓名varchar (20) not null,密码varchar (20) not null,权限varchar (20) not null,constraint pk_管理信息表primary key clustered (ID asc))insert into 管理员信息表values('10104202','123456','')3.3.3数据实现结果3.3.3.1员工信息表3.3.3.2.薪资信息表3.3.3.3.培训信息表3.3.3.4.奖惩信息表3.3.3.5.管理员信息表4 实验体会通过此次人事资源管理系统的数据库的课程设计,真正达到了学与用的结合,增强了我们对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,这次的课程设计,让我明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。

相关主题