您的当前位置:首页人事管理系统课程设计文档(DOC毕设论文)

人事管理系统课程设计文档(DOC毕设论文)

2020-07-18 来源:飒榕旅游知识分享网
 . . .

《数据库原理与应用》课程设计

目 录

1. 系统需求分析阶段2

1.1 引言2 1.2 目标与任务2

1.2.1 需求分析阶段的目标2 1.2.2 需求分析阶段的任务2

2.数据字典4

2.1总体结构4

2.2表结构与数据词典4

3. 概念设计阶段7

3.1 引言7

3.2 概念模型设计8

4.逻辑设计阶段10

4.1逻辑设计的任务和目标10 4.2数据组织10

4.2.1将E-R图转换为关系模型10

5.行为设计11 6.物理设计阶段11

6.1物理设计阶段的目标与任务11 6.2数据存储方面11

7.数据库实施阶段11

7.1建立数据库、数据表、视图、索引11

7.1.1 建立数据库11 7.1.2 建立数据表12 7.1.3 建立视图13 7.1.4 建立索引14 7.2数据入库14

7.3创建各个功能的存储过程14

8.数据库应用程序设计15

8.1设计窗体界面15 8.2添加数据源16 8.3编写代码17

. . .

8.4生成最后程序17

9.总结与收获17

1. 系统需求分析阶段

1.1 引言

一直以来人们使用传统人工的方式管理员工档案,这种管理方式存在着许多缺点,譬如:效率低、性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。人事管理信息系统的出现轻而易举的解决了传统管理人员档案的方法的缺点。伴随着人事管理信息系统的广泛应用,它已经成为了任何一家企业公司都不可缺少的组成部分,它的存在使得管理者更容易了解自己公司的员工,便于分配人员,易于进行调整。所以人事管理信息系统能够为管理人员提供充足的信息和快捷的查询手段。

1.2 目标与任务

1.2.1 需求分析阶段的目标

(1)了解目前宿舍管理的现状以与SQL Server 2000的功能和特点。

(2)通过资源查找和问答-记录的方式了人事管理的工作业务流程,并记录和处理相关的数据。

1.2.2 需求分析阶段的任务

(1)处理对象:

1.管理员基本信息:包括 管理员账号、管理员密码,用于管理员登录管理系统。 2.职工基本信息:包括 职工编号、职工、性别、出生日期、参加工作日期、住址、、来自本单位的时间、评定时间、工龄年数等方面的信息,可以方便员工信息的查询和更新; 3.职称信息:包括 职称名、工资级别、基本工资、职务补助、房补; 4.奖惩信息:包括 编号、金额、容,便于对奖惩信息的管理;

2 / 18

. . .

5.工龄表:包括 工龄年数、工龄津贴,便于对工龄信息的管理; 6.洗理费信息:性别、洗理费;

(2)处理功能要求

系统主要完成一下几个功能:

1.管理员对职工基本信息查询与更新;

2.职工对职工信息、房补、职称、工龄信息的查询; 3.职工对奖惩信息的查询; 4.管理员对职工实施奖惩操作

5.职工对房补、职称、工龄、奖惩、洗理费信息的查询与更新;

(3)系统流程图

登录验证

工作人员

职工

管 理 职 工

管 理 工资信息 个查看工资清单

人信息查询 (4)安全性和完整性要求

安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过用户授权机制,欲用户登陆来识别用户级别,根据这个级别来分配用户权限,达到数据更高层次的安全功能。

完整性要求用于描述各项基本信息中数据项能否为null,以与一些用户自定义完整性(符合实际要求),详细完整性要求见于系统的逻辑设计阶段。

3 / 18

. . .

2.数据字典

2.1总体结构

人事管理系统共包含6个表,其结构如下:

人事管理系统

职工表 职称表 工龄表

洗理费表 奖惩

管理员表

2.2表结构与数据词典 1) 职工表

表结构

字段名称 编号 性别 出生日期 参加工作日期 住址 来自本单位的时间 职称名 评定时间 编号1 数据类型 字段大小 必填字段 是 是 是 是 是 是 是 是 是 是 是 允许空字符串 否 是 是 是 是 是 是 是 是 是 是 varchar 50 varchar 50 char 10 datetime 8 datetime 8 varchar 50 varchar 50 datetime 8 varchar 50 datetime 8 varvhar 50 4 / 18

. . .

数据词典

编号=各职工的编号,1-50个字符或数字 =各职工的,1-50个字符

性别=各职工的性别,1-10个字符

出生日期=各职工的出生日期,1-8个数字

参加工作日期=各职工的工资日期,1-8个数字 住址=各职工的住址,1-50个字符 =各职工的,1-50个字符

来自本单位的时间=各职工来单位的时间,1-8个数字 职称名=各职工的职称名,1-50个字符

评定时间=各职工的评定时间,1-8个数字 ——年、月、日 编号1=奖惩登录编号,1-50个字符或数字

2)职称表

表结构

字段名称 职称名 数据类型 varchar 字段大小 50 4 8 8 8 必填字段 是 是 是 是 是 允许空字符串 否 是 是 是 是 工资级别 int 基本工资 money 职务补助 money 房补 money

职称名=各职工的职称名,1-50个字符或数字 工资级别=各职工的工资级别,1-4个字符 基本工资=各职工的基本工资,1-8个数字 职务补助=各职工的职务补助,1-8个数字 房补=各职工的房补,1-8个数字

3)工龄表

表结构

字段名称 数据类型 字段大小 50 8 5 / 18

必填字段 是 是 工龄年数 varchar 工龄津贴 money 允许空字符串 否 是 . . .

工龄年数=各职工的工龄年数,1-50个字符或数字 工资津贴=各职工的工资津贴,1-8个数字

4)洗理费

表结构

字段名称 性别 数据类型 varchar 字段大小 50 8 必填字段 是 是 允许空字符串 否 是 金额 money

性别=各职工的性别,1-50个字符或数字 金额=各职工的金额,1-8个数字

5)管理员表

表结构

字段名称 数据类型 字段大小 50 50 必填字段 是 是 允许空字符串 否 是 登录 varchar 密码 varchar

登录=管理员的登录,1-50个字符或数字 密码=管理员的密码,1-50个字符或数字

6)奖惩

表结构

字段名称 数据类型 字段大小 50 50 必填字段 是 是 允许空字符串 否 是 编号1 varchar 容 varchar (4)处理逻辑描述(判定表或判定树)

处理逻辑列表

6 / 18

. . .

判定条件 判断用户查询涉与的功能模块 判断用户修改要涉与的模块,同时把相应的修改数据传到相应的模块之中 决策 先确定查询所涉与的功能模块;然后,确定要查询的容,确定查询数据流向;最后显示查询结果。 先确定更新所涉与的功能模块;然后,把更新信息传送到相应的模块中;最后,进行相应的更新操作。 3. 概念设计阶段

3.1 引言

概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键,包括概念模型设计和新系统流程两个阶段。

7 / 18

. . .

3.2 概念模型设计

8 / 18

. . .

职务补职称名 助 房补 工资级别 工龄津贴 工龄年数 职称 评定时工龄 基本工资 评定 间 计算 编号 参加工作日期 XX 编号1 金 奖惩 来自的单位 职工 性别 内出生日期 登陆 来自本单位的时间 决定 住址 管理员 洗理费 登录XX 性别 金额 密码

9 / 18

. . .

4.逻辑设计阶段

4.1逻辑设计的任务和目标

以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。具体容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)、数据处理(画出系统功能模块图)两大任务

4.2数据组织

4.2.1将E-R图转换为关系模型

具体的基本E-R图向关系模型的转化如下:

职工(编号性别 出生日期 参加工作日期 住址 来自单位 来自单位的时间 职

称名 评定时间 工龄年数编号 )

职称(职称名 工资级别 基本工资 职务补助 房补)

工龄(工龄年数 工龄津贴)

奖惩(编号 金额 容)

管理员(登录 密码)

洗理费(性别 金额)

(注:标有直线下划线的为主属性,标有波浪线下划线的是外键属性,主属性与外键属性一起构成主码)

10 / 18

. . .

5.行为设计

关系模式不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF

6.物理设计阶段

6.1物理设计阶段的目标与任务

数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,

在这个阶段中要完成两大任务:

(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构; (2)对物理结构进行评价,评价的重点是时间和空间效率。

6.2数据存储方面

为数据库中各基本表建立的索引如下:

1. 由于基本表 职工表 的主码 编号,经常在查询条件中出现,且经常出现在相等的

比较条件中,考虑在其之上建立聚簇索引;

2. 基本表 管理员 的属性值几乎不会有什么变化,更新率很低,可考虑适当建立索

引;

3. 基本表 洗理费 奖惩 职称表 的属性值不经常更新,权衡系统为维护索引付出的

代价,可考虑不建立索引,也可以适当建立索引。

7.数据库实施阶段

7.1建立数据库、数据表、视图、索引

7.1.1 建立数据库

create database 人事管理系统;

11 / 18

. . .

7.1.2 建立数据表

(1)奖惩基本信息表的建立:

CREATE TABLE奖惩(

[编号1] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL , [金额] [money] NULL ,

[容] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

(2)工龄基本信息表的建立:

CREATE TABLE 工龄表 (

[工龄年数] [int] NOT NULL , [工龄津贴] [money] NULL

) ON [PRIMARY]

(3)洗理费基本信息表的建立:

CREATE TABLE 洗理费 (

[性别] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL , [金额] [money] NULL

) ON [PRIMARY]

(4)管理员基本信息表的建立:

CREATE TABLE管理员表 (

[登录账号] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL , [密码] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL

) ON [PRIMARY]

(5)职工基本信息表的建立:

CREATE TABLE职工表 (

[编号] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL , [] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

12 / 18

. . .

[性别] [char] (10) COLLATE Chinese_PRC_CI_AS NULL , [出生日期] [datetime] NULL , [参加工作日期] [datetime] NULL ,

[住址] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [来自本单位的时间] [datetime] NULL ,

[职称名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [评定时间] [datetime] NULL , [工龄年数] [int] NULL ,

[编号1] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

(6)职称基本信息表的建立:

CREATE TABLE职称表 (

[职称名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL , [工资级别] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [基本工资] [money] NULL , [职务补助] [money] NULL , [房补] [money] NULL

) ON [PRIMARY]

7.1.3 建立视图

(1)用于查询职工工资基本信息的视图定义如下:

CREATE VIEW 职工工资 AS

SELECT 职工表.编号, 职工表., 职称表.工资级别, 职称表.基本工资, 职称表.职务补助, 职称表.房补, 洗理费.金额 AS 洗理费, 奖惩.金额 AS 奖惩金额, 工龄表.工龄津贴 FROM 工龄表 INNER JOIN

职工表 ON 工龄表.工龄年数 = 职工表.工龄年数 INNER JOIN 奖惩 ON 职工表.编号 = 奖惩.编号1 INNER JOIN 洗理费 ON 职工表.性别 = 洗理费.性别 INNER JOIN 职称表 ON 职工表.职称名 = 职称表.职称名 CROSS JOIN 管理员表

13 / 18

. . .

(2)方便于职工账号查询、更新的视图定义如下:

CREATE VIEW 职工账号

AS

SELECT 编号, FROM 职工表

7.1.4 建立索引

7.2数据入库

附录中也给出了各个基本表插入元组的存储功能,详细容请参阅附录2。

7.3创建各个功能的存储过程

系统共创建了16个存储过程,具体列表如下:

表7.1 创建的存储过程列表:

编号 存储过程名称

P-1 P-2 P-3 P-4 P-5 P-6 P-7 P-8 P-9 P-10 P-11 P-12 P-13 P-14 P-15 P-16 P-17

delete_奖惩_1 delete_工龄表_1 delete_洗理费_1 delete_管理员表_1 delete_职工表_1 insert_奖惩_1 insert_工龄表_1 insert_洗理费_1 insert_管理员表_1 insert_职工表_1 insert_职称表_1 update_奖惩_1 update_工龄表_1 update_洗理费_1 update_管理员表_1 update_职工表_1 update_职称表_1

作用

在奖惩中删除元组 在工龄表中删除元组 在洗理费中删除元组 在管理员表中删除元组 在职工表中删除元组 在奖惩中插入一元组 在工龄表中插入一元组 在洗理费中插入一元组 在管理员表中插入一元组 在职工表中插入一元组 在职称表中插入一元组 在奖惩中更新操作 在工龄表中更新操作 在洗理费中更新操作 在管理员表中更新操作 在职工表中更新操作 在职称表中更新操作

14 / 18

. . .

8.数据库应用程序设计

8.1设计窗体界面

15 / 18

. . .

8.2添加数据源

16 / 18

. . .

8.3编写代码

8.4生成最后程序

9.总结与收获

在初期,初步确定使用SQL sever建立了基本数据库,对前端的控制设计进行了功能

17 / 18

. . .

分类;使用VB进行数据库连接。

经过这次数据库课程设计,我觉得遇到的困难很多,做课程设计时明显感觉平时学到的东西不够。

例如,在建立关系图的时候,由于每个表中的主码名称一样,但意义不统一,所以造成课设初期无法建立关系图。在画E-R图的时候,曾经研究过是用属性表示某个对象恰当,还是用实体集表示更为恰当;还分析了是否使用一般化。

总结人事管理系统的功能使我对整个数据库系统有了全面的了解,使各部分能够联系起来,不在是单独的几块容。

此次课程设计不仅考验了我的数据库系统的概念和数据库的设计,而且更加检验了我使用VB的熟练程度。比如说属性的修改等等。

通过此次课程设计,我的一些知识运用的熟练程度得到了提高,进一步了解了数据库的结构特点和设计过程。

最后,最要感在此过程中传授我们数据库知识并且在课程设计过程中帮助过我们的季伟老师。

18 / 18

因篇幅问题不能全部显示,请点此查看更多更全内容