数据库课程设计工资管理信息系统.doc

上传人:仙人指路1688 文档编号:3770039 上传时间:2023-03-21 格式:DOC 页数:30 大小:970.50KB
返回 下载 相关 举报
数据库课程设计工资管理信息系统.doc_第1页
第1页 / 共30页
数据库课程设计工资管理信息系统.doc_第2页
第2页 / 共30页
数据库课程设计工资管理信息系统.doc_第3页
第3页 / 共30页
数据库课程设计工资管理信息系统.doc_第4页
第4页 / 共30页
数据库课程设计工资管理信息系统.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《数据库课程设计工资管理信息系统.doc》由会员分享,可在线阅读,更多相关《数据库课程设计工资管理信息系统.doc(30页珍藏版)》请在三一办公上搜索。

1、摘 要为了更好的巩固和加强书本所学的知识,把所学的东西转化为实际应用。我们学习了IBM DB2应用程序的使用。并应用了SQL语言。对数据库的创建、修改、删除方法有了一定的了解。通过导入表和删除表、更改表学会了对于表的一些操作。为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。 当人们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽取有用的信息。当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好

2、的利用这些数据资源。 对企业而言,人力资源即是企业最宝贵的资源,也是企业的生命力所在。而工资管理又是人力资源管理的重中之重。实行电子化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。本文介绍设计课题的选题背景和意义,相关的研究和开发工作的比较和综述,研究开发的过程,以及设计思路和实现细节的考虑,最后给出了在设计过程的体会。关键词:SQL语言;IBM DB2;数据库设计;工资管理信息系统目录第一章 绪论21.1课题简介21.2设计目的21.3设计内容2第二章 需求分析32.1 需求分析的任务32.2 需求分析的过程32.3数据字典与流程图3第三章 概念结构设计

3、93.1 概念结构设计的方法与步骤93.1.1 概念结构设计的方法93.1.2 概念结构设计的步骤93.2 数据抽象与局部视图设计93.3视图的集成11第四章 逻辑结构设计134.1 E-R图向关系模型的转换134.2 数据模型的优化134.3 数据库的结构14第五章 数据库物理设计185.1 索引的建立185.2 表空间的建立19第六章 数据库的实施206.1系统实验要求206.2表的建立与数据的载入206.3触发器的设计216.4 数据库的运行226.5 数据库的查询25总 结28参考文献29第一章 绪论1.1课题简介随着时代的发展,计算系软件和系统的成熟,如何实行电子化的工资管理,可以让

4、人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。这便是摆在我们面前只待解决的问题。经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系实际的宗旨,通过学校提供的这次课程设计实践的机会,在指导教师的帮助下,历经两周时间,我自行设计一套工资管理信息系统,在下面的各章中,我将以这套工资管理信息系统为例,谈谈其开发过程和所涉及到的问题。1.2设计目的应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。实践和巩固在课堂教学中学习的关于DB2的有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价

5、。实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。1.3设计内容a)某单位现有 10 名员工,他们属于10种职业。b)该单位下设 4 个部门,即部落,精灵,联盟,天灾。c)工资由基本工资,福利奖金,工龄工资,奖励工资,养老保险和医疗基金和扣除旷工罚金.d)每个员工的基本资料有编号,姓名,性别,年龄,所属部门,职业,工资卡号,联系电话,家庭住址。e)工资按月发放,实际发放的工资金额为工资

6、减去扣除。第二章 需求分析2.1 需求分析的任务首先抽象出工资管理系统的需求:1.工资管理系统需求,包括有员工的基本工资,员工的基本信息,各种奖金的管理,住房公积金和失业保险。然后根据以上的各因素可统计出员工的工资。2.员工的基本信息需求中需要有员工的姓名,员工的性别,所属的部门,员工的职位,年龄。根据员工的基本信息找到相应员工的所属部门,职位,工龄等与工资计算有关联的元素。3.奖金管理需求中可以根据加班的时长算出加班奖金,旷工时数算出应该扣除的矿工罚款,以及每个员工享有的福利奖金和各种补助可计算出每个员工总共应该享有的奖金数目。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户

7、机的界面要简单明了,易于操作,服务器程序利于维护。2.2 需求分析的过程管理公司为方便员工,需开发一个工资管理系统。为便于公司发放和管理与工资相关业务,公司把员工的工资信息,员工编号,工资卡号,员工姓名,性别,年龄,家庭住址,联系电话,部门编号,职位编号,输入工资关系信息系统的客户端程序,系统经过查询后,为员工计算应得工资金额,并向员工所提供的工资卡号内汇入相应的金额。2.3数据字典与流程图1业务流程分析经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出员工信息、工资信息和发放工资的具体需求。图 2.1 工资管理系统 调查用户需求 财务办公需求功能:员工持个人证件去

8、财务室查询工资信息。希望能通过工人姓名和员工编号查到该员工的工资卡号并记录员工基本信息。统计功能:按机票统计应发工资的人数按姓名统计工资员工购票需求领取功能:领取 工资发放需求通知功能:通知员工发放工资统计功能:统计通过验证的人数统计可以领取的人统计未通过验证的人数查询功能:领取工资员工查询 领取工资员工姓名 领取工资员工身份证号 领取工资员工卡号 工资信息需求查询功能:工资卡号基本工资奖金工龄工资2系统模块分析在调查完了用户需求之后,就要开始分析用户需求。在此,我们采用自顶向下的结构化分析方法(SA方法)。首先,定义全局概念结构的框架,如图2.2所示。图 2.2 工资管理总系统图 2.3 工

9、资计算管理子系统图 2.3 员工管理子系统图 2.4 部门管理子系统 图2.5 职位管理子系统2.6 考勤管理子系统2.7 工龄工资管理子系统要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。3数据字典将所有子系统全部细化。将所有用户需求分析完毕之后,就要开始构造数据字典了。经分析之后,本系统要用到 6张基本表:员工月工资表,员工信息表,奖金信息表,部门管理表,工龄管理表,职位管理表。数据结构定义如表 2-1 所示表表2-1 数据结构定义数据结构名含义说明组成员工月工资表定义员工工资表包括的所有信息工资卡号,姓名,性别,基本工资,

10、医疗基金,养老保险,实得工资员工信息表定义了每个员工的信息员工编号,工资卡号,员工姓名,性别,年龄,家庭住址,联系电话,部门编号,职位编号奖金信息表定义了每个员工享有的各种奖金以及加班时数和旷工时数员工编号,工资卡号,姓名,加班时长,加班奖金,旷工时长,旷工罚款,福利奖金部门管理表定义了各部门的基本信息部门编号,部门名称,部门经理工龄管理表定义了员工的工龄与相应工龄工资员工编号,工资卡号,姓名,参加工作日期,现在日期,工龄工资职位管理表定义了公司内的职位信息职位编号,职位名称,职位工资第三章 概念结构设计3.1 概念结构设计的方法与步骤3.1.1 概念结构设计的方法概念设计阶段我采用自底向上的

11、方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。3.1.2 概念结构设计的步骤第一步是进行局部视图的设计:由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。因此我们先逐一的设计分E-R图。第二步是进行视图的集成:各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。我想采用一次集成两个分E-R图的方式。3.2 数据抽象与局部视图设计画出各个系统的 E-R 图:员工表属

12、性;部门表属性图 3.1 员工与部门概念 E-R图员工表属性职位表属性图 3.2 员工与职位的概念 E-R图员工表属性工资表属性图 3.3 员工与工资表的 E-R 概念图 工资表属性 奖金管理表属性图 3.4 工资表与奖金管理的概念E-R 图工资表属性工龄工资属性图 3.5 工资表与工龄工资的概念 E-R 图3.3视图的集成联系以上四个分E-R图,分析四个分E-R图之间的关系,并综合所有的关系,总结出以下的系统总E-R模型,如图3.6。职位编号姓名性别联系电话家庭住址年龄职位名称职位工资部门名称部门经理部门编号工资表工龄奖金职位员工部门拥有包含担任包括属于1111NNNN1N参见工作现在日期姓

13、名员工编号工龄工资姓名性别基本工资工资卡号医疗基金养老保险员工编号姓名加班时长加班奖金矿工罚款旷工时常3.6系统总体结构E-R图第四章 逻辑结构设计4.1 E-R图向关系模型的转换将图3.5总体概念结构E-R图转化成关系模型。工资表(工资卡号,姓名,性别,基本工资,医疗基金,养老保险,实得工资)员工 (员工编号,工资卡号,员工姓名,性别,年龄,家庭住址,联系电话,部门编号,职位编号)部门 (部门编号,部门名称,部门经理)职位 (职位编号,职位名称,职位工资)奖金 (员工编号,工资卡号,姓名,加班时长,加班奖金,旷工时长,旷工罚款,福利奖金)工龄 (员工编号,工资卡号,姓名,参加工作日期,现在日

14、期,工龄工资)4.2 数据模型的优化将转化的关系模式进行优化,最终达到第三范式。工资表(工资卡号,姓名,性别,基本工资,医疗基金,失业保险)员工(员工编号,姓名,性别,年龄,家庭住址,联系电话)部门(部门编号,部门名称,部门经理)职位(职位编号,职位名称,职位工资)奖金(员工编号,姓名,加班时长,加班奖金,旷工时长,旷工罚款,福利奖金)工龄(员工编号,姓名,开始工作日期,现在日期,工龄工资)4.3 数据库的结构 给出工资管理系统基本表结构图。ZhZmZzPkVarcharVarcharBbBmBlPkVarcharVarcharVarcharYhXmXdZzNlDhBbZhKhPkVarcha

15、rVarcharVarcharSmallintVarcharFkVarcharFkVarcharFkVarcharKhXmXdJbYjYbPkVarcharVarcharVarcharSmallintSmallintSmallintYhXmCqXqGlKhPkVarcharVarcharDateDateDateFkVarcharYhXmJsJgFlKsKgKhPkVarcharVarcharVarcharVarcharVarcharVarcharVarcharFkVarchar图4.1各表的结构根据总体结构图设计各表的结构,其相应标的定义如下:表 4-1 员工月工资基本表字段名别名数据类型长度

16、约束描述说明Kh工资卡号Varchar15主键表示员工工资的唯一标志Xm姓名Varchar15不为空员工的姓名Xb性别Varchar8不为空员工的性别Jg基本工资Smallint不为空员工的基本工资Yj医疗基金Smallint不为空员工的医疗基金Yb养老保险Smallint不为空员工的养老保险表 4-2 员工的基本信息表字段名别名数据类型长度约束描述说明Yh员工编号Varchar15主键表示员工的唯一编号Xm姓名Varchar15不为空员工的姓名Xb性别Varchar15不为空员工的性别Zz家庭住址Varchar8不为空员工家庭住址Nl年龄Smallint不为空员工的年龄Dh联系电话Varch

17、ar15不为空员工的联系电话表 4-3 部门管理信息表字段名别名数据类型长度约束描述说明Bb部门编号Varchar15主键表示部门的唯一编号Bm部门名称Varchar15不为空部门的名称Bl部门经理Varchar15不为空部门经理的姓名表 4-4 奖金管理信息表字段名别名数据类型长度约束描述说明Yh员工编号Varchar15主键表示员工的唯一标志Xm姓名Varchar15不为空员工的姓名Js加班时长Smallint不为空员工的加班时长Jg加班工资Smallint不为空员工的加班工资Fl福利奖金Smallint不为空员工的福利奖金Ks旷工时长Smallint不为空员工的旷工时长Kg矿工罚款Sma

18、llint不为空员工的矿工罚款表 4-5 职位管理信息表字段名别名数据类型长度约束描述说明Zh职位编号Varchar15主键表示职位的唯一编号Zm职位名称Varchar15不为空职位的名称Zz职位工资Smallint不为空职位的工资表4-6 工龄管理信息表字段名别名数据类型长度约束描述说明Yh员工编号Varchar15主键表示员工的员工唯一编号Xm姓名Varchar15不为空员工的姓名Cq参加工作日期Date不为空员工第一次参加工作的日期Xq现在日期Date不为空现在的日期Gl工龄工资Date不为空工龄的工资第五章 数据库物理设计5.1 索引的建立 先给出索引的相关定义,然后自己选择表或者属性

19、建立索引,要求表和索引存储在不同的表空间里,写出相关的SQL语句。建立唯一索引CONNECT TO MQY29;SELECT DISTINCT A.TABSCHEMA, A.TABNAME, A.TYPE, A.TBSPACE, A.INDEX_TBSPACE, A.LONG_TBSPACE, A.DATACAPTURE, A.DEFINER, A.REMARKS, A.CARD, A.STATS_TIME FROM SYSCAT.TABLES A, SYSIBM.SYSINDEXES B WHERE (A.TYPE IN (T,S) AND A.TABNAME=B.TBNAME AND A.

20、TABSCHEMA=B.TBCREATOR AND B.NAME=员工基本信息AND B.CREATOR=ADMINISTRATOR) FOR FETCH ONLY;CONNECT RESET;建立聚簇索引CONNECT TO MQY29;CREATE UNIQUE INDEX ADMINISTRATOR.部门 ON ADMINISTRATOR.部门管理信息表 (部门编号 ASC) INCLUDE (部门名称 ) CLUSTER PCTFREE 10 DISALLOW REVERSE SCANS PAGE SPLIT SYMMETRIC COLLECT STATISTICS ;CONNECT

21、RESET;5.2 表空间的建立给出表空间的相关定义,然后建立需要用到的表空间,写出相关的SQL语句。1CONNECT TO MQY29;SELECT DISTINCT A.TABSCHEMA, A.TABNAME, A.TYPE, A.TBSPACE, A.INDEX_TBSPACE, A.LONG_TBSPACE, A.DATACAPTURE, A.DEFINER, A.REMARKS, A.CARD, A.STATS_TIME FROM SYSCAT.TABLES A, TABLE ( SELECT COUNT(*) AS NUM_COLUMNS FROM SYSCAT.DATAPART

22、ITIONEXPRESSION S WHERE A.TABNAME = S.TABNAME AND A.TABSCHEMA = S.TABSCHEMA) AS PARTITION_COLUMNS WHERE (A.TYPE=T AND (PARTITION_COLUMNS.NUM_COLUMNS 0 AND DMS01 IN (SELECT C.TBSPACE FROM SYSCAT.DATAPARTITIONS B, SYSIBM.SYSTABLESPACES C WHERE B.TBSPACEID = C.TBSPACEID AND A.TABNAME = B.TABNAME AND A.

23、TABSCHEMA = B.TABSCHEMA UNION SELECT C.TBSPACE FROM SYSCAT.DATAPARTITIONS B, SYSIBM.SYSTABLESPACES C WHERE B.LONG_TBSPACEID = C.TBSPACEID AND A.TABNAME = B.TABNAME AND A.TABSCHEMA = B.TABSCHEMA)OR ( A.TBSPACE=DMS01OR A.INDEX_TBSPACE=DMS01OR A.LONG_TBSPACE=DMS01 ) ) FOR FETCH ONLY;CONNECT RESET;2CONN

24、ECT TO MQY29;CREATE REGULAR TABLESPACE DMS02 PAGESIZE 4 K MANAGED BY SYSTEM USING (D:表空间dms02 ) EXTENTSIZE 16 OVERHEAD 10.5 PREFETCHSIZE 16 TRANSFERRATE 0.14 BUFFERPOOL IBMDEFAULTBP DROPPED TABLE RECOVERY ON;CONNECT RESET;第六章 数据库的实施6.1系统实验要求将创建的表之一上的所有特权授予给自己建立的用户administrator。6.2表的建立与数据的载入 需要明确数据库需

25、要建立几张表,以及每个表中所要包括的属性。在建立表的过程中。要对每个表进行字段属性的设置。建立视图语句:建立的视图:6.3触发器的设计建立触发器语句:CREATE TRIGGER ADMINISTRATOR.BBC AFTER INSERT ON ADMINISTRATOR.部门管理信息表 REFERENCING NEW AS n FOR EACH ROW MODE DB2SQL WHEN (n.部门编号=05)INSERT INTO ADMINISTRATOR.部门管理信息表 (部门编号, 部门经理, 部门名称) VALUES (05, SGLS, EM)触发器功能:当部门编号大于等于05的

26、时候插入新的一行。6.4 数据库的运行录入的结果,抓图,每个表一个图。图6.1员工月工资基本表收录了10位员工的工资信息:姓名,性别,工资卡号,基本工资,医疗基金,养老保险。图6.2员工的基本信息表收录了10位员工的员工编号,姓名,性别,家庭住址,年龄,联系电话,工资卡号,部门编号,职位编号。图6.3部门管理信息表收录了位员工的部门信息,部门编号,部门名称,部门经理。图6.4奖金管理信息表收录了10位员工的员工编号,姓名,加班时长,加班工资,旷工时长,矿工罚金,工资卡号。图6.5职位管理信息表收录了10位员工的职业编号,职业名称,职位工资图6.6工龄管理信息表收录了10位员工的员工编号,姓名,

27、厂家工作日期,现在日期,工龄工资,工资卡号。6.5 数据库的查询抓一些查询结果的界面,至少五个,对每个查询的图,写出相应得查询语句。图6.7对职位管理信息表进行更新操作图6.8操作结果图6.9对员工的基本信息表进行查询操作图6.10查询结果图6.11对员工月工资基本表进行查询全部信息的操作图6.12查询结果图6.13对奖金管理信息表进行插入操作图6.14插入结果图6.15对部门管理信息表进行删除数据操作图6.16删除结果总 结随着计算机科学技术的发展,尤其是SQL语言的出现,数据库以其高效、便捷、安全的特点逐步被广泛应用与各类信息管理中,并取得了明显的效果。本DB2系统是专为公司发放工资设计,

28、尤其是大型有限公司的信息管理开发的数据库。它的主要功能包括:基本工资信息管理、奖金信息管理、员工信息管理、部门信息管理和职业信息管理。可为公司相关管理部门提供有限公司工资管理所需的全部信息资料,极大的提高了信息管理的效率和安全性。在全面详尽的信息管理资料的基础上,还根据需要定义了一个员工基本信息视图。通过这个员工视图,可以方便的了解各公司员工的基本信息。为了进一步方便用户查询。本DB2数据库还添加了两个索引。一个是建立在员工信息上的员工信息的唯一索引,另一个是建立在部门信息表上的部门信息的聚簇索引。这更加方便了本DB2数据库的查询使用。此外,为进一步管理使用本DB2数据库存储的部门信息,还专门

29、为部门表添加了一个触发器。该触发器为后触发器。设计思想是当部门编号大于4的时候自动添加新的一行数据,方便了对部门信息的管理。另外,通过相关的SQL查询语句,用户可以对原有表中的数据进行整理。它为用户提供了全面的信息服务,使用户可以对其感兴趣的内容进行进一步的查询,并可对相关信息进行整合。用户还可以对根据实际情况的变化,使用相应的SQL语句对原有表进行更新、插入和删除等操作。为保证信息的安全性,用户还可以使用相应的授权语句设置其他用户的使用权限,使得不同部门的用户只能操作与本部门有关的信息,这样充分的保障了信息的安全性。总而言之,这款超市信息管理系统的数据库是一款十分实用,而且使用方便、高效的的工资管理信息管理数据库。必将会对公司工资管理起到重要的辅助作用。参考文献1 杨鑫华,赵慧敏等数据库原理与DB2应用教程M清华大学出版社,2007.82 王珊,陈红数据库系统原理教程M清华大学出版社,1998.7 3 (美)希伯尔沙茨数据库系统概念M机械工业出版社,20084 李志伟DB2基础教程M清华大学出版社,2003.25 程勇等DB2 V9权威指南M电子工业出版社,20096 牛新庄循序渐进DB2DBA系统管理、运维与应用案例M清华大学出版社,2009

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号