《我的数据库课设.doc》由会员分享,可在线阅读,更多相关《我的数据库课设.doc(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、摘 要随着科技的进步,社会的发展,数据库技术也得到的高速的前进,应用到越来越多的领域中。而本文则主要讲的是数据库在工资管理方面的应用。工资管理系统是企业劳动人们管理人事的重要方面,同时也是企业财务管理的重要方面。因为它联系着企业内部的人与财。而信息时代的到来使得工资管理由原来的手工进行发放,发展成现在的网络管理操作。原来的工资管理不仅工作复杂繁重,而且还得花费大量的人力与财力。而现在通过工资管理系统进行发放工资,不仅能够保证工资发放核算无误、快速输出,而且还可以利用工资数据库对有关工资进行各种数据统计,服务与财务部门其他方面的财务核算与处理。 本文主要讲的是工资管理数据库的设计。其基本内容有:
2、课题简介、需求分析、概念结构设计与逻辑结构设计。最后通过去我们设计的数据库进行检验,即输入查询语句进行查询。看是否能得到正确的结果。关键词:科技;工资管理;系统;数据库;结构目 录摘 要I目 录II1 前言11.1 课题简介11.2设计目的22 需求分析32.1业务需求及处理流程32.1功能需求分析42.3 业务规则分析53 概念结构设计63.1 概念设计63.1.1 定义实体集和属性63.1.2 E-R方法63.2 局部E-R图73.3 全局E-R图84 逻辑结构设计104.1 E-R图向关系模型的转换104.2 数据完整性设计105 数据库的实施115.1 数据库与基表的创建115.2 数
3、据的载入125.3 数据的查询13结束语15参考文献161 前言1.1 课题简介当今社会,资金是企业生存的重要元素,资金的流动影响着企业的整体运作。企业员工的工资是企业资金管理的一个重要的组成部分。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理都采取纸质材料和具有较强的时间限制。这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识已
4、进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对企业人事工资管理信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高企业信息管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。 随着数据库技术的不断发展及数据库管理系统的广泛应用,数据库中存储的数据量急剧增大,这些数据库中的大量数据隐含着许多有价值的信息,而传统的对数据库的简单操作只能发现表层的知识,不能归纳出隐含的带有结构性的知识,已不能满足人们的需要,人们更希望通过对数据的分析,得到数据更深层次的信息,
5、或者说得到可用于进行决策的知识,也即对数据进行挖掘。数据挖掘,顾名思义就是从大量的数据中挖掘出有用的信息。 开发本系统的目的就是帮助企业的财务主管部门提高工作效率,实现企业工资信息管理的系统化、规范化和自动化。本系统包括修改员工信息、员工的基本工资金额、设置其他项目的金额(奖金、福利、津贴、扣发等)、设置工资计算公式等,使单位实现工管理的自动化,无疑将给企业管理部门带来很大方便。1.2设计目的员工工资管理系统统是使用电脑代替大量的人工统计和计算,完成众多企业工资信息的处理,同时使用电脑还可以安全地、完整地保存大量的企业工资记录。而我们此次课程实践就是设计员工工资管理数据库。利用这学期我们学到的
6、数据库理论知识,再加上上机课的实践能力培训,将理论知识与实践能力结合起来,设计员工工资管理系统。使我们能够熟练掌握数据库系统的作用及模型;SQL语言的编写及查询相关语句;数据库建模(包括概念模型与逻辑设计);同时在我们实践的过程中,我们要知道怎样建立一个好的关系模式,怎样画出E-R图,才能是数据库简洁有效,此次的实践不仅有利于我们更好地掌握好数据库相关知识,而且为我们的毕业设计打下基础。2 需求分析需求分析就是分析用户的需求,是设计数据里的第一步。该步骤主要是通过详细调查现实世界要处理的对象,并在此基础上确定系统的功能。2.1业务需求及处理流程 业务需求分析是根据现实世界对象需求,描述应用的具
7、体业务流程。员工工资管理系统的主要任务是利用计算机工具来对一般企业的工资信息进行管理,包括查询、修改、删除、输出等功能,能够迅速的处理大量的数据,一般企业的员工都能通过口令来查看自己的工资情况,系统管理员对整个工资系统负责,完成数据的更新及企业人员资料变动的修改,使大家操作起来方面、快捷,界面简单总的来说,本系统能完成以下几大任务:1)对企业的人事变动信息进行更新,如增加新来员工的信息,删除离职员工的基本资料。 2)对员工的工资进行计算、修改,月末汇总企业所有员工的工资,计算出应发工资于实发工资,如计算错误系统管理人员能够对员工的工资进行修改处理 3)查询功能,能够根据一定条件查询某个员工的工
8、资明细。 4)打印功能,系统管理人员能够根据不同的需求打印输出工资报表,方便整个财务管理。其系统业务流程如图1-1所示: 图1-12.1功能需求分析功能需求分析的目的就是要弄清楚用户对目标系统在数掘处理方面所提出的具体的需求。工资管理系统的主要任务就是对一般企业的工资进行管理,其它的一切功能都是围绕和基于这个中心的。因此,本系统的主要目的就是对员工的工资进行管理,汇总及发放等一系列要求。具体来说,工资管理涉及企业管理的多个方面,如员工职务工种变化、员工考勤情况、员工加班情况、员工医疗保险等等。根据这些信息,在每个月的某个固定时间,生成企业全体员工的月工资。对于月工资,能够实现按照员工、部门、月
9、、年进行统计分析,产生相应报表。(1)信息输入功能1)输入员工的基本信息。包括:员工编号、姓名、出生年月、参加工作时间、所属部门、职务职称、婚姻状况等基本信息。2)输入员工的工资信息。包括:基本工资、岗位工资、住房补贴、津贴、工会会费、水电费、住房公积金、养老保险、奖惩、福利等。3)输入员工的部门信息。包括:部门编号、部门名称、部门负责人、部门人数。(2)数据修改删除功能1) 修改和删除员工的基本信息。当单位人员的信息发生变化,如职称的改变,工作部门的变动,或调离本单位等,系统应能修改员工的信息,或将其从员工信息表中删除。2) 修改和删除员工的工资信息。员工升职加薪、工资普调是企业中常见的事情
10、,这就需要系统能方便地对员工工资进行个别及批量的修改;如员工调离本单位,就应该从员工信息表中删除这个员工的信息,将其工资表中的信息相应的数据删掉。3) 修改和删除部门信息。当撤消一个部门时,应能丛部门信息表中将其删除。而当一个部门的名称发生改变时,系统中所有该部门的名称应做一致的改变。(3)查询和统计功能1) 能够查询指定员工的基本信息。2) 能够查询某个部门或全部部门的基本信息。3) 查询某个员工的工资信息。4) 统计、汇总指定年份企业各部门或某个部门每个月或全年工资总额,汇总各部门的人数或本单位的总人数。5) 工资表月工资记录的生成功能。生成当月所有员工或某个部门的工资记录,同时能进行员工
11、工资的计算,即计算应发金额、应扣金额及实发金额。6) 查询员工的账户信息2.3 业务规则分析根据上述功能需求,通过与相关员工的共同与交流,员工工资管理系统的业务规则如下:1)员工(基本用户)只有查询信息的功能。2)管理员负责设定基本工资,津贴,保险,福利及其修改。3)新增用户由管理员分配账号才能登录。4)员工编号为统一的字符长度。5)实施规则:工资相关金额必须大于0,性别只能是“男”和“女”等等。6)每位员工由员工编号唯一标识,员工编号由系统按时间顺序生成。3 概念结构设计3.1 概念设计3.1.1 定义实体集和属性这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之
12、间的关系,为后面的逻辑结构设计打下基础。其实体集与属性关系如下:(1)分析前面的系统功能要求,需要一个表来存储和管理员工信息,使系统能够接受员工原始的各项数据,以实现数据录入、查询或统计员工信息等功能。员工是本系统的第一个实体。员工实体集具有:员工号、员工姓名、性别、所在部门、工资级别、工资等级等属性。(2)为了能实现查询和统计部门内员工情况等功能,必须有一个表来存储和管理所有部门的信息。部门是本系统的第二个实体。部门实体集具有:部门名称、工作岗位名称、工作岗位工资等属性。(3)工资是以员工工作情况来制定的。需要建立一个表来记录各种工资、福利、工龄的信息。它主要为各种查询和统计功能提供工资数据
13、。工资是第3个实体。工资实体集具有:员工号、员工姓名、员工基础工资、员工岗位工资、员工工龄工资、公司福利、员工实得工资等属性。3.1.2 E-R方法E-R方法是“实体-联系方法”(Entity-Relationship Approach)的简称。它是描述现实世界概念结构模型的有效方法。用E-R方法建立的概念结构模型称为E-R模型,或称为E-R图。E-R图基本成分包含实体型、属性和联系。 实体型:用矩形框表示,框内标注实体名称。属性:用椭圆形框表示,框内标注属性名称 。联系:指实体之间的联系,有一对一(1:1),一对多(1:n)或多对多(m :n)三种联系类型。例如系主任领导系,学生属于某一系,
14、学生选修课程,工人生产产品,这里“领导”、“属于”、“选修”、“生产”表示实体间的联系,可以作为联系名称。联系用菱形框表示,框内标注联系名称现实世界的复杂性导致实体联系的复杂性。表现在E-R图上可以归结为几种基本形式: 两个实体之间的联系, 两个以上实体间的联系, 同一实体集内部各实体之间的联系,例如一个部门内的职工有领导与被领导的联系,即某一职工(干部)领导若干名职工,而一个职工(普通员工)仅被另外一个职工直接领导,这就构成了实体内部的一对多的联系。如图6.12(c)所示。需要注意的是,因为联系本身也是一种实体型,所以联系也可以有属性。如果一个联系具有属性,则这些联系也要用无向边与该联系连接
15、起来。例如,学生选修的课程有相应的成绩。这里的“成绩”既不是学生的属性,也不是课程的属性,只能是学生选修课程的联系的属性。3.2 局部E-R图根据上述的概念结构设计,工资管理系统的局部E-R图设计如下:(1) 员工信息局部E-R图如图1-2所示:员工姓名工号性别所在部门工资级别图1-2 员工基本信息实体E-R图(2)员工信息局部E-R图如图1-3所示:部门岗位工资岗位名称名称如图1-3部门信息实体E-R图(2) 工资信息局部E-R图如图1-4所示:工资信息基础工资实得工资岗位工资员工号员工姓名工龄工资公司福利如图1-4员工工资信息E-R图3.3 全局E-R图根据上面的巨臂E-R图我们可以画出全
16、局E-R图,其如图1-5所示:工资信息员工部门员工号姓名基础工资岗位工资工龄工资实得工资公司福利性别姓名员工号所在部门工资级别岗位工资岗位名称部门名称属于拥有 图1-5全局E-R图4 逻辑结构设计4.1 E-R图向关系模型的转换将上图概念模型的E-R图转化为关系模型。员工(员工号,员工姓名,员工性别,所属部门,工资级别,婚姻状况,)部门(部门名称,岗位名称,岗位工资)员工工资(员工号,员工姓名,基础工资,岗位工资,工龄工资,实得工资,公司福利)带下划线的属性为各关系模式的外码,字体为粗体的属性为各关系模式的主码。关系规范式 :工资管理系统1NF 每个属性均不可再分.4.2 数据完整性设计设计好
17、关系模型的结构后,需要根据实际应用和操作规则为表制定一系列约束和规则,从而达到保证数据完整性原则的目的。约束(1)主键约束、非空值约束在三个表中规定每个表的主键列、非空列,其中员工表的主键为员工号,部门表的主键为部门名称,员工工资表的主键为员工号。(2)员工基本信息表中,所属的部门名称在部门表中应该有对应的值。 (3)设定缺省约束,如员工性别。设置非空约束,如员工姓名。实施CHECK约束,如保险的金额大于0。5 数据库的实施5.1 数据库与基表的创建分析前面的系统功能要求,需要一个表来存储员工的基本基本信息,使系统能够查看员工的基本信息和接收用户输入的各项数据,以实现数据的录入、查询或删除信息
18、等功能。本系统主要是对员工工资进行相应操作,需要一个表来按员工编号存储员工的各项工资,以实现对员工工资信息的查询、更新等操作。需要一个部门表存储部门编号、部门名称、部门负责人、部门人数。所以,为了储存该系统的大量数据,需要创建一个数据库,其创建步骤为:1)打开SQL Server2005,在本地服务器上创建新的数据库shujuku。 2)展开shujuku数据库,单击“表”,按照设计,创建表worker、department、salary。 创建的数据表如下图所示:表1工资数据表表2员工信息数据表表3部门信息数据表5.2 数据的载入 数据表建立之后,在使用该系统之前,先载入一些基本数据。根据上
19、述数据表,在每个数据表中输入与该表数据类型相同的数据,并保存。以下是我在本次实践中数据入库的截图:如图1-6 图1-65.3 数据的查询 数据表的建立与数据的载入之后,数据库中就就储存着这些信息,为了查到这些信息,数据库提供了查询处理功能,即用高层数据库语言(如SQL语言)表示查询语句翻译成能在文件系统的物理层上使用的表达式为优化查询而进行的各种转换以及查询的实际执行。查询处理的执行有多种可选的方案,这些方案的执行代价有很大的差异,为查询进行优化,选择一个执行代价最小的执行方案,是RDBMS的责任。而在本次实践中,主要是查询员工信息、员工工资及员工所在的部门信息,以下是我所查询的信息的截图:(
20、1) 查询单个员工工资信息。其查询语句如下:select 工号,工资年月,岗位工资,病假扣款,事假扣款,应发工资,实发工资from 工资,员工WHERE 工资.工号=员工.工号 AND 姓名 LIKE 闵%;查询图如图1-7:图1-7(2)每个部门的工资情况,按月的工资统计,其查询语句如下:Select 部门名称,avg(实发工资)from 工资,员工where 工资.工号=员工.工号group by 部门名称查询图如1-8所示: 图1-8(3)查询员工基本情况如图1-9所示:查询语句:select * from 员工; 图1-9结束语通过这次设计,使我受到了一次用专业知识、专业技能分析和解决
21、问题的全面系统的锻炼。使我在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。为日后成为合格的应用型人才打下良好的基础。这次在指导老师的帮助下,在同学的帮助下,基本上完成了设计任务,在软件的设计方面也有了一定的提高,熟练掌握了SQL Server命令和编程技巧,为今后走上工作岗位打下了专业基础。在这次的设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。最后,我要衷心感谢老师在我的设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的毕业设计。同时,也要感谢我的老师和同学们及实习企业在本系统的设计过程中给予我的支持和帮助。参考文献1冷辉.刘晓峰: 高校教师绩效工资的管理与实现.合肥工业大学.20082吴杰.唐伟:考勤工资管理系统的设计与实现,辽宁工程技术大学财务.20083李开丽:企业人事考勤与工资管理系统的设计与实现.大连理工大学.20084姚洪勇:工资管理系统在单位中的应用J辽宁大学学报.20065冷辉.刘晓峰:高校教师绩效工资的管理与实现.合肥工业大学.2008