sql数据库课程设计工资管理系统.pdf

上传人:l*** 文档编号:72127619 上传时间:2023-02-08 格式:PDF 页数:18 大小:812.41KB
返回 下载 相关 举报
sql数据库课程设计工资管理系统.pdf_第1页
第1页 / 共18页
sql数据库课程设计工资管理系统.pdf_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《sql数据库课程设计工资管理系统.pdf》由会员分享,可在线阅读,更多相关《sql数据库课程设计工资管理系统.pdf(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、70+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案河南城建学院河南城建学院数据库技术及其应用课程设计报告书数据库技术及其应用课程设计报告书题题目:目:系系部:部:专专业:业:班班级:级:姓姓名:名:学学号:号:指导教师:指导教师:工资管理系统工资管理系统数理系数理系数学与应用数学数学与应用数学-河南城建学院2013 年1 月 11 日170+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80

2、m 连续刚构桥施工方案连续刚构桥施工方案目录第一章第一章 选题的背景和意义选题的背景和意义.1 11 1 选题的背景选题的背景.1 11.21.2 选题的意义选题的意义.1 1第二章第二章数据库结构设计数据库结构设计.2 22.22.2概念结构设计概念结构设计.3 32.32.3 逻辑结构设计逻辑结构设计.4 4第三章第三章程序代码实现程序代码实现.7 73.13.1 创建表:创建表:.7 73.23.2 数据导入数据导入:.9 93.33.3 查询功能的实现:查询功能的实现:.9 93.43.4 其他实现:其他实现:.1 14 4第四章第四章 课程设计总结课程设计总结.1 15 5刘保朋小结

3、:刘保朋小结:.1 15 5参考文献:参考文献:.1 16 6170+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案第一章第一章 选题的背景和意义选题的背景和意义1 选题的背景选题的背景随着公司业务的扩展,人员的增多,传统的手工作业已经不再适合公司发展的需要所以引进计算机技术对企业内部员工进行方便的管理,这样有诸多好处,各层管理人员可以对企业众多的员工信息进行动态的管理,例如基本资料的修改,添加,删除,查询等。有利于减少错误,减轻人事部门的任务,提高效率,节约人力资源,降

4、低企业成本。1.2 选题的意义选题的意义随着经济的发展,企业正向着大型化、规模化发展,而对于大中型企业,员工、职称等跟工资管理有关的信息随之急剧增加。在这种情况下单靠人工来处理员工的工资不但显得力不从心,而且极容易出错。如何设计一个小型企业工资的数据库管理系统,由计算机代替人工执行一系列诸如增加新员工,删除旧员工,工资查询,统计等操作。这样就使办公人员可以轻松快捷地完成工资管理的任务。对于企、事业单位的工资发放来说,不需要太大型的数据库系统。只需要一个操作方便,功能实用,能同时满足财务部门、单位其他相关部门及代发单位三方对数据的管理及需求的系统。企业的目标就是在于利用数据库编程设计一个操作方便

5、、简单实用的工资管理系统。实现工资的集中管理。可供管理人员对本单位的人员以及工资进行增加、删除、修改、查询,对人事的管理及工资发放中的应发工资合计等项目由系统自动进行计算;同时系统还可对人事及工资管理情况进行多角度查询。利用数据库对小型企业的工资进行管理,不仅可以节省开支,而且还可以节省时间,充分发挥了其小却精的特点,通过对这个数据库的编程,也是企业认识到了自己在很多方面的不足,也掌握了很多应用方面的技巧。170+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案第二章第二章

6、数据库结构设计数据库结构设计2.1需求分析需求分析本系统开发的主要目标是要企事业单位工资管理实现计算机管理,使管理员能够有序的管理每一位职工的各项工资条款的发放,以及企业工资的统计,使企业运用现代化技术创造更多更高的经济效益,在此基础上开发一个工资管理系统。实现本单位财务部门对工资发放的集中管理。可供财务人员对本单位的人员进行增加、修改、删除、更新、查询,对工资发放中的应发工资合计,同时本系统还可以对工资发放情况进行多角度查询,能够按不同的条件进行查询。2.1.1 总体需求(1).建立对企业员工工资全面管理的信息系统;(2).对所有的职工提供全面管理;(3).对系统的安全提供全面管理;(4).

7、对职工信息的添加、删除提供全面管理;2.1.2 功能需求(1)对工资记录进行录入。(2)对工资信息进行查找。(3)对多个工资记录进行浏览。(4)对记录进行满足各种实际需要的修改。(5)对各项工资的总和和总的人数进行统计。数据介绍静态数据:职工基本信息,职工出缺勤信息。动态数据:职工基本信息,职工工资信息,奖金,职工出缺勤信息。数据库介绍职工基本信息数据库:包括职工的工号,姓名,所属部门职工出缺勤信息数据库:包括职工的工号,姓名,缺勤次数职工工资信息数据库:包括职工的工号,姓名,基本工资,原始奖金,缺勤金,实际工资270+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及

8、 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案功能描述职工基本信息管理系统:采集职工的工号,姓名,所属部门,并可以进行查询和修改。职工出勤管理系统:采集职工的工号,姓名,缺勤次数,并可以进行查询职工工资管理系统:为实际工资及奖金计算提供数据源,向各部门传输标准工资信息安全性分析采用严格的用户验证与权限控制,用户需要通过身份验证才能进入本系统,没用权限的用户不能使用本系统,每个用户只能修改自己的密码,保密性良好,确保系统安全可靠。2.22.2 概念结构设计概念结构设计部门负责人1 11部门工号n姓名n n基本工资1 1员工部门号工种性别电话1工资

9、1 11加班工资其他奖金图 2-1 员工工资管理系统关系图370+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案1员工n1工种从事1n设工工资置作11n1部门工作时间核准图 2-2 ER 关系图2.32.3逻辑结构设计逻辑结构设计将管理系统的 E-R 图转换为关系数据库的数据模型,其关系模式为:(1)员工档案(姓名,性别,职位,电话,状态,部门号),其中员工编号为主键,部门号为外键;(2)出勤记录(出勤编号,员工号,签到时间,签出时间),出勤编号为主键,员工号为外键;(3

10、)工资记录(员工号,基本工资,岗位津贴,加班补贴,出差补贴,违纪扣除,发薪日期),工资编号为主键,员工号为外键。(4)部门记录(部门编号,名称,领导人号),部门编号为主键。将工资管理系统定名为“工资管理系统”。2.42.4 物理结构设计物理结构设计由于该系统主要用于员工的工资增加、删除、更改和查询,所以应用程序这要就是这几个功能。我们建立数据库的存储模式,文件结构,指定数据库文件的名称,并为设计好的关系模型设计表结构。员工(姓名,工号,部门,工种,性别,生日,电话)工种(工种号,基本工资,时加班津贴)月工作时间(工号,每日上班时间,每日下班时间)部门(部门号,负责人,负责人电话)470+120

11、+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案表 2-1 员工字段名工号(id)姓名(sn)部门号(dps)工种(ws)性别(sex)生日(birth)电话(tele)类型文本型文本型文本型文本型文本型日期型文本型宽度10102012211小数主键/索引(主)参照表约束男 or 女Null 值表 2-2 部门字段名部门号(dps)部门(dp)负责人(rs)负责人电话(rt)类型文本型文本型文本型文本型宽度1020811小数主键/索引(主)参照表约束Null 值表 2-3 工种字

12、段名工种(ws)部门(dp)基本工资(fs)时 加 班 津 贴类型文本型文本型文本型文本型宽度122044小数主键/索引(主)参照表约束Null 值(sub)表 2-4 月工作时间(每个月生成一个表)字段名工号(id)月初上班时间(st1)类型文本型日期型宽度10小数主键/索引参照表员工约束Null 值570+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案月初下班时间(dt1)-月末上班时间(st1)月末下班时间(dt1)日期型日期型日期型日期型日期型日期型(1)给每个表

13、实施主键约束:主键约束、非空值约束;员工:工号为主键,所以此项非空;部门:部门名称为主键,所以此项非空;工资:工号为主键,所以此项非空。(2)外键约束员工表中,工号、部门名称为外键。(3)惟一约束每个表的主键需定义为惟一性:对于工资表,因为工号是主键,联系着员工表,所以建立唯一性。图 2-3 数据关系图670+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案第三章第三章程序代码实现程序代码实现3.1创建表:创建表:表一:departmentCreate table dbo.

14、departmentdp nchar(20)collate Chinese_prc_ci_as null,dp snchar(10)collate Chinese_prc_ci_as not null,rs nchar(8)collate Chinese_prc_ci_as not null,rt nchar(11)collate Chinese_prc_ci_as not null,dps ascConstrantpk_部门表 primary key clusteredwith(ignore_dup_key=off)on primaryon primary表二:monthtimeCREATE

15、TABLE dbo.monthtime(id nchar(10)COLLATE Chinese_PRC_CI_AS NOT NULL,st1 datetime NULL,dt1 datetime NULL,st2 datetime NULL,dt2datetime NULL,st3 datetime NULL,dt3 datetime NULL,st4 datetimeNULL,dt4 datetime NULL,st5 datetime NULL,dt5 datetime NULL,st6datetime NULL,dt6 datetime NULL,st7 datetime NULL,dt

16、7 datetimeNULL,st8 datetime NULL,dt8 datetime NULL,st9 datetime NULL,dt9datetime NULL,st10 datetime NULL,dt10 datetime NULL,st11 datetimeNULL,dt11NULL,st13NULL,dt14NULL,st16NULL,dt17NULL,st19NULL,dt20NULL,st22NULL,dt23NULL,st25NULL,dt26datetimedatetimedatetimedatetimedatetimedatetimedatetimedatetime

17、datetimedatetimedatetimeNULL,st12NULL,dt13NULL,dt16NULL,dt19NULL,dt22NULL,dt25datetimedatetimedatetimedatetimedatetimedatetimeNULL,dt12NULL,st14NULL,dt15NULL,st17NULL,dt18NULL,st20NULL,dt21NULL,st23NULL,dt24NULL,st26NULL,dt27datetimedatetimedatetimedatetimedatetimedatetimedatetimedatetimedatetimedat

18、etimedatetime7NULL,st15datetimeNULL,st18datetimeNULL,st21datetimeNULL,st24datetimeNULL,st27datetime70+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案NULL,st28datetimeNULL,dt28datetimeNULL,st29datetimeNULL,dt29 datetime NULL,st30 datetime NULL,dt30 datetime NULL,

19、CONSTRAINT PK_月工作时间表 PRIMARYKEY CLUSTERED(idASC)WITH(IGNORE_DUP_KEY=OFF)ON PRIMARY)ON PRIMARY表三:professionCREATETABLE dbo.profession(ws nchar(12)COLLATE Chinese_PRC_CI_AS NOT NULL,dp nchar(20)COLLATE Chinese_PRC_CI_AS NULL,sub int NULL,fs int NULL,CONSTRAINT PK_工种表 PRIMARYKEY CLUSTERED(ws ASC)WITH(I

20、GNORE_DUP_KEY=OFF)ON PRIMARY)ON PRIMARY表四:workerCREATETABLE dbo.worker(sn nchar(10)COLLATE Chinese_PRC_CI_AS NULL,id nchar(10)COLLATE Chinese_PRC_CI_AS NOT NULL,dps nchar(10)COLLATE Chinese_PRC_CI_AS NULL,ws nchar(12)COLLATE Chinese_PRC_CI_AS NULL,sex nchar(2)COLLATE Chinese_PRC_CI_AS NULL,birth dat

21、etime NULL,tele nchar(11)COLLATE Chinese_PRC_CI_AS NULL,CONSTRAINT PK_员工表 PRIMARYKEY CLUSTERED(idASC)WITH(IGNORE_DUP_KEY=OFF)ON PRIMARY)ON PRIMARYGO870+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案3.2 数据导入数据导入:表 3-1department部门(dp)稽核部宣传部部门号(dps)10011002负责人(rs)

22、张鹏程李晨魏晨负责人电话(rt)研发部1000表 3-2monthtime表 3-3profession工种(ws)干事经理文书部门(dp)宣传部稽核部稽核部时加班津贴(sub)基本工资(fs)10010090表 3-4worker3500450030003.3 查询功能的实现:查询功能的实现:考勤信息记录作为一种原始的数据资料,作为核算员工工资的根本依据,一般不允许用户对其进行编辑和删除。因此该模块的主要功能是对考勤机发来的原始数据的存储和对现有考勤记录的显示。由于考勤数据量较大再用窗体的显示方法显然是不合适的,因此这里通过列表控件来显示记录集中的数据。企业进行考勤的目的是为了有效控制员工的

23、迟到、早退及旷工等不良现象。但不能简单的根据某员工缺少某天的考勤记录就认定该员工违反工作纪律。例970+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案如:员工在请过事病假并得到领导批准、因工作需要外派而不能在有效时间内赶回公司刷卡的现象就应在月末汇总时剔除在外。(1)计算每个员工的工资,生成临时表如下(每个月统计结果):表 3-5 工资条姓名工号基本工资加班津贴其他补贴迟到早退请假SQL 查询语言如下:(1)将有考勤机获得的员工上班时间(我们在此仅取五天的上下班情况)由年

24、月日时分转换成有时分,形成一个新表格 new_table(员工号,月初上班时间,-,月末下班时间)新表格中的时间不含有年月日,以便于与上班时间比较和简化存储量。new_table 表格的 SQL 语言形成如下:use 工资管理系统goselect id as 员工号,convert(varchar(10),st1,108)as 1 日上班时间,convert(varchar(10),dt1,108)as 1 日下班时间,convert(varchar(10),st2,108)as 2 日上班时间,convert(varchar(10),dt2,108)as 2 日下班时间,convert(va

25、rchar(10),st3,108)as 3 日上班时间,convert(varchar(10),dt3,108)as 3 日下班时间,convert(varchar(10),st4,108)as 4 日上班时间,convert(varchar(10),dt4,108)as 4 日下班时间,convert(varchar(10),st5,108)as 5 日上班时间,convert(varchar(10),dt5,108)as 5 日下班时间into new_table from monthtime表 3-6 上下班时间表1070+120+120+70m70+120+120+70m 连续梁桥连

26、续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案(2)形成每个月的考勤表,利用上面形成的表格做为参照表,建立考勤表(正常,迟到,早退,加班,请假,缺勤情况(即上下班时间为空值时仅视为缺勤)。当然也可以建立存储过程 worker_id,方便查询。use 工资管理系统goselect idcase when datediff(minute,convert(varchar(10),st1,108),8:00)0then 早退when datediff(minute,18:00,convert(varchar(10),dt1,108)=0an

27、d datediff(minute,18:00,convert(varchar(10),dt1,108)=25then加班 endas 1 号下班情况,case when datediff(minute,convert(varchar(10),st2,108),8:00)0then 早退when datediff(minute,18:00,convert(varchar(10),dt2,108)=0and datediff(minute,18:00,convert(varchar(10),dt2,108)=25then加班 end as 2 号下班情况,case when datediff(m

28、inute,convert(varchar(10),st3,108),8:00)0then 早退when datediff(minute,18:00,convert(varchar(10),dt3,108)=0and datediff(minute,18:00,convert(varchar(10),dt3,108)=25then加班 endas 3 号下班情况,case when datediff(minute,convert(varchar(10),st4,108),8:00)0then 早退when datediff(minute,18:00,convert(varchar(10),dt

29、4,108)=0and datediff(minute,18:00,convert(varchar(10),dt4,108)=25then加班 endas 4 号下班情况,case when datediff(minute,convert(varchar(10),st5,108),8:00)0then 早退when datediff(minute,18:00,convert(varchar(10),dt5,108)=0and datediff(minute,18:00,convert(varchar(10),dt5,108)=25then加班 endas 5 号下班情况from monthti

30、me1270+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案生成表格如下:表 3-7 考勤表有上述生成的表格,属于交叉表的类型,在数据统计的过程中,需要进行行列置换,通过SQL 中的 piovt 运算符实现交叉表的行列互换,然后运用循环语句统计迟到,早退及缺勤的次数。(3)对员工的工作时间汇总,统计出每个月员工每天个工作时间(在此统计五天的工作时间)。利用该表来计算工资时,不考虑由于迟到所扣除的工资,月份中所包含的节假日给予的特殊的工资以及加班所工作的时间作为迟到时间个弥

31、补和加班时间不足 25 分钟的不予考虑。表中时间的单位以分钟计。SQL 语言程序如下:对于加班时间不足一小时的,不统计在加班时间之内。生成表如下:use 工资管理系统goselect worker.sn,monthtime.id,datediff(minute,st1,dt1)as 1号工作时间,datediff(minute,st2,dt2)as 2 号工作时间,datediff(minute,st3,dt3)as 3 号工作时间,datediff(minute,st4,dt4)as 4 号工作时间,datediff(minute,st5,dt5)as 5 号工作时间into 月时间总表fr

32、om monthtime,workerwhere worker.id=monthtime.id表 3-8 工作时间统计表1370+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案(4)计算每个员工的每个月的工资形成如下表格:表 3-9 工资表内容姓名工号基本工资加班津贴其他补贴加班总时间SQL 程序如下:在计算工资时,我们暂不考虑周末及节假日的工资情形,分别求出员工每天加班的时间,然后得到月总加班时间,对于因为迟到,早退等叩工资的情况,暂不在程序的求解范围之内。在此,我们仅

33、求 5 天的工资情况。select worker.sn as 员工名,worker.id as 员工号,fs as 基本工资,1 号工作时间+2 号工作时间+3 号工作时间+4 号工作时间+5 号工作时间-5*8as 加班总时间,(floor(1 号工作时间+2 号工作时间+3 号工作时间+4 号工作时间+5 号工作时间)/30)-5*8*60-10)*fs/50*2+fs/25 as 工资into 工资条from worker,profession,月时间总表where worker.ws=profession.ws and worker.id=月时间总表.id计算出结果如下表:表 3-10

34、 工资表3.4 其他实现其他实现:通过四个表的关联,还可以实现生成公司的企业报表,和核算公司的劳务成本等。也可以计算出每个员工每个月迟到,早退的次数,缺勤的次数以及相应时间,但是没有能够对节假日,换假,换班,部门岗位调动,轮班等一些太多涉及认为因素的情况做出详细的分析。1470+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案第四章第四章 课程设计总结课程设计总结刘保朋小结:刘保朋小结:我主要负责第二章的部分内容和一些小的细节,包括需求分析和逻辑设计。其中需求分析主要是了解

35、用户的要求和处理要求并写成说明书,在这一步骤中我通过搜索查询相关资料了解了工资管理系统所需要的数据及处理要求,而逻辑设计则是数据模式的转换。其中涉及到了员工的各种信息及其工资情况和奖金方面的数据,还有对其进行一些几班操作的功能和安全性分析。在这次课程设计中,我学到了很多,刚开始只是知道理论,上机的时候也只是对整个数据库的一部分进行实践操作,像这样的全面的分析还是第一次,又加上掌握的知识不是特别牢固,所以刚开始的时候非常迷茫,不知道如何下手,经过与组员的讨论交流,老师的指导以及对有关资料的查询使我们终于有了落脚点,经过我们组的努力最终完成了这次课程设计。通过这次课程设计是我进一步的了解了数据库技

36、术,深感自己学到的只是皮毛中的皮毛,更激起了我进一步学习数据库的热情。这次课程设计中还有很多方面没有考虑全面及一些功能无法实现。往后我会更加努力的学习数据库技术,掌握更多相关的知识做出更好的设计。1570+120+120+70m70+120+120+70m 连续梁桥连续梁桥 及及 80+140+140+80m80+140+140+80m 连续刚构桥施工方案连续刚构桥施工方案参考文献:参考文献:1孙明丽 王斌 sql server 2005 数据库系统开发 人民邮电出版社 20072姜桂洪 张龙波等 SQL Sever 2005 数据库应用与开发 清华大学出版社 20103贺利坚等 数据库技术与应用 北京:北京希望电子出版社 20024丁宝康等 数据库实用教程 北京:清华大学出版社 20015 李建中等 数据库系统原理 北京:电子工业出版社 19986施伯乐等 数据库技术 北京:科学出版社 20027 徐洁磐 现代数据库系统教程 北京:北京希望电子出版社 2002 饱食终日,无所用心,难矣哉。论语阳货16

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁