工资管理系统课程设计.docx
- 文档编号:26513360
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:7
- 大小:18.93KB
工资管理系统课程设计.docx
《工资管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《工资管理系统课程设计.docx(7页珍藏版)》请在冰豆网上搜索。
工资管理系统课程设计
工资管理系统(课程设计)
工资管理系统(课程设计)课程设计报告课程设计名称:
数据库原理与应用系部:
二系学生姓名:
班级:
学号:
成绩:
指导教师:
开课时间:
2011-2012学年1学期一.设计题目:
工资管理系统系统功能的基本要求:
Ø员工各种信息的输入及维护。
Ø员工每个工种基本工资的设定。
Ø加班津贴管理,根据加班时间和类型给予不同的加班津贴;Ø按照不同工种的基本工资情况、员工的考勤情况产生员工的每月的月工资;Ø员工年终奖金的生成,员工的年终奖金计算公式=(员工本年度的工资总和+津贴的总和)/6;Ø能够查询单个员工的工资情况、每个部门的工资情况、按月的工资统计。
二.主要内容:
主要包括需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库施及程序编制三.具体要求1.课程设计的内容独立自主完成,课程设计报告内容完整、格式规范、排版整洁美观;2.后台数据库采用MSSQLSERVER2005,前台界面语言不限,编写的程序代码,须有较详细的注释说明;四.进度安排课程设计安排:
16周星期一讲解课程设计的内容,安排每一天的具体任务,分配并熟悉题目;星期二需求分析:
给出系统的功能需求、性能需求,并绘制DFD和DD;星期三概念结构设计:
绘制实体属性图(可选),局部ER图和全局ER图;星期四逻辑结构设计:
转换、优化、外模式的设计;星期五物理结构设计及数据库实施;17周星期一应用程序编制调试、整理课程设计报告,并检查;星期二根据反馈结果修改课程设计;星期三提交作业上交的材料:
课程设计的电子稿、打印稿、源码(SQL代码和程序代码)五.成绩评定考核方法:
现场验收(占50%),课程设计报告(占50%)。
考核内容:
学习态度(出勤情况,平时表现等)、方案合理性、各阶段的图表与程序编制质量、设计报告质量。
成绩评定:
优,良,中,及格,不及格。
特别说明:
(1)如发现抄袭,按照不及格处理。
(2)材料不齐的,考核等级降一级。
电子稿件以压缩文件的形式上交,压缩命名为:
11位学号+姓名六.正文撰写内容:
第一章需求分析1.1功能需求Ø员工的信息的的输入、删除及维护。
Ø员工的基本工资的设定。
Ø根据员工的加班时间和类型不同给予不同的津贴。
Ø对于员工的每月工资按照不同的公布工种和考勤情况分派。
1.2数据流程图1.2.1系统管理子系统流程图:
用户登录登录信息用户表1.2.2员工信息子系统管理员员工基本信息员工考勤信息员工加班信息员工工资信息员工奖金信息员工表用户登录登录信息员工基本信息员工考勤信息员工加班信息员工工资信息员工奖金信息用户管理员管理反馈信息总系统流程图如下:
1.3数据字典员工:
包含员工的基本资料。
考勤:
在里面可以看到缺勤的总类,每一天的缺勤的原因和总人数。
津贴:
在加班的类型和时间来决定津贴的数目。
工资:
根据员工在公司的职位和部门决定工资的多少。
第二章概要设计和逻辑设计2.1概要设计用户名用户密码用户身份用户1.用户的E-R图:
员工员工号姓名年龄2.员工信息:
3.员工考勤信息E-R图:
缺勤信息缺勤类型缺勤标准员工员工-考勤缺勤号小时数时间nm4.员工津贴信息E-R图:
津贴津贴号津贴类型价格标准员工员工-加班加班日期加班时数nm5.员工工资信息E-R图:
员工员工工资工资工资号部门职位基本工资n16.实体和实体之间的关系E-R图1n工资属于职务员工拥有拥有员工信息n1112.2逻辑结构设计根据总E-R图中的实体与实体之间的联系以及转换的一般原则,对上述初始关系模式进行规范化,经分析关系中不存在部分函数依赖和传递函数依赖,已达到3NF。
得到如下的关系模型(“__”代表主码):
用户(用户名,用户密码,用户身份)员工(员工号,姓名,年龄)员工号为主码缺勤(缺勤号,缺勤类型,缺勤标准)缺勤号为主码津贴(津贴号,津贴类型,津贴标准)津贴号为主码工资(工资号,部门,基本工资,职位)工资号为主码考勤表(时间,小时数,缺勤号,员工号)缺勤号,员工号为主码加班表(加班日期,加班时数,员工号,津贴号)员工号,津贴号为主码2.3逻辑模型1.员工表字段名存储代码数据类型长度员工号Sno文本15姓名Sname文本8年龄Snl文本22.缺勤表字段名存储代码数据类型长度缺勤号Qq文本2缺勤类型Qlx文本50缺勤标准Qbz文本103.津贴表字段名存储代码数据类型长度津贴号Jt文本2津贴类型Jlx文本10津贴标准Jbz文本104.工资表字段名存储代码数据类型长度工资号Gno数字3部门Gdept数字10职务Gzw数字10基本工资Gjb数字105.考勤表字段名存储代码数据类型长度时间Ksj数字2小时数Kxs数字10缺勤号Qq文本2员工号Sno文本156.加班表字段名存储代码数据类型长度加班日期Jjr数字3加班时数Jjr数字10员工号Sno文本15津贴号Jt文本24.物理结构设计数据库的建立如上表所示,存储路径等均采用系统默认设置。
5.数据库实施及应用程序编制程序:
1.创建数据库createdatabase工资管理on(name=sales_dat,filename=d:
\sales.mdf)2.创建表createtable员工(emp_Snovarchar(15)notnullprimarykey,——员工号emp_Snamevarchar(8)notnull,——姓名Snlchar
(2)notnull——年龄)createtable工资表(emp_Gnovarchar(3)notnull,——工资号Gjbchar(10),——基本工资Gdeptfloat,——职务Gzwchar(10),——部门constrainte_kprimarykey(emp_Sno))createtable津贴(emp_Jtvarchar
(2)notnull,——津贴号Jbzvarchar(10)notnull,——津贴标准Jlxchar(10),——津贴类型constrainte_jprimarykey(emp_no,jiaban_bianhao))createtable缺勤(emp_Qqvarchar
(2)notnull,——缺勤号Qlxchar(50)notnull,——缺勤类型缺勤标准floatdefault1500,——缺勤标准constrainte_gprimarykey(emp_sno,))3.创建、绑定默认值createdefaultgongzi_defaas0execsp_bindefaultgongzi_defa,工资种类.zhonglei_gongziexecsp_bindefaultgongzi_defa,津贴.jaban_jiangjinexecsp_bindefaultgongzi_defa,月工资.gonghuihuifeiexecsp_bindefaultgongzi_defa,月工资.zhfgjjinexecsp_bindefaultgongzi_defa,月工资.yanglaobaoxianexecsp_bindefaultgongzi_defa,月工资.zhufangbutie4.创建触发器a.员工表中删除一条信息,其他表相应员工信息删除createtriggeremon员工fordeleteasdeletefrom考勤whereemp_noin(selectemp_nofromdeleted)deletefrom津贴whereemp_noin(selectemp_nofromdeleted)deletefrom月工资whereemp_noin(selectemp_nofromdeleted)验证:
deletefrom员工whereemp_no=20070101b.一个部门删除,此部门中的员工信息删除createtriggerbmon部门fordeleteasdeletefrom员工wheredepartment_idin(selectdepartment_idfromdeleted)验证:
deletefrom部门wheredepartment_id=01’c.员工职务变动,基本工资改变createtriggerjbgzon员工forupdate,insertasdeclare@qvarchar(12)declare@mvarchar(12)declare@sfloatselect@q=emp_nofromDeletedselect@m=zhiwufromInsertedselect@s=jibengongzifrom基本工资wherezhiwu=@mupdate月工资setjibengongzi=@swhere月工资.Emp_no=@q5.创建函数a.函数查询员工基本信息createfunctionygxx(@yg_idvarchar(10))returnstableasreturn(select*from员工whereemp_no=@yg_id)验证:
select*fromdbo.ygxx(20070202)b.函数查询部门信息createfunctionbumen(@bumen_idvarchar(4))returnstableasreturn(select*from部门wheredepartment_id=@bumen_id)验证:
select*fromdbo.bumen(03)7.创建存储过程a.存储过程查询员工基本信息createprocygxx2@yg_idvarchar(10)asselect*from员工whereemp_no=@yg_idb.存储过程查询指定某个部门或全部部门的基本信息createprocbumen2@bumen_id2varchar(4)asselect*from部门wheredepartment_id=@bumen_id2createprocbumenqasselect*from部门c.存储过程查询某个员工的工资信息createprocgzxx-@yg_idvarchar(10)asselect*from月工资whereemp_no=@yg_idd.汇总部门月份工资createprocgzhz@dep_idvarchar(04),@month_yearvarchar(10)asselectdepartment_id,gz_monthfrom月工资wheredepartment_id=@dep_idandgz_month=@month_yearorderbydepartment_id,gz_monthe.汇总工资总和execgzhz03,200905createprocsum_sumasselectdepartment_name,gz_month,sum(wagecount)from部门,月工资where部门.department_id=月工资.department_idgroupbydepartment_name,gz_month模块分析在SQL数据库中需要建立2个数据表:
员工信息表、工资结构表。
用户选择自己的身份登录系统后,在进行相应的查询。
如下图所示:
用户登录员工表工资表缺勤表津贴表参考文献:
[1]赛奎春等.Delphi数据库开发实例解析[M].北京:
机械工业出版社,2004,23-169.[2]刘斌等.Delphi7数据库高级教程[M].北京:
清华大学出版社,2004,249-273.6.课程设计心得体会这次的课程设计,在指导老师的悉心指导和帮助下,在我同学帮助下顺利地完成了数据库原理试卷库管理系统。
回顾这次课程设计,从刚开始的不知所措,到后来能够独立应用SQL来编写sql代码以及完成系统的调试。
我感觉到自己的进步。
在这次课程设计在很多地方需要完善,及时掌握新的知识,在实践中提高自己的能力。
这个学期的课程设计,我有以下几点体会:
(1)课程设计的初期工作要准备好。
在设计模板是对概念不是很清楚,对知识模糊。
在我接下来的实践造成很大的麻烦。
(2)SQL代码的编写问题。
由于我对SQL的清晰度还不够,要实现有些功能的难度还是相当大的。
特别是在对数据库的修改上,有很大的麻烦。
(3)要注重理论知识的学习以及实践。
在课程设计过程中,我发现自己对理论知识的学习还不够透彻。
因此,在做课程设计前,我们必须努力学好理论。
学习好理论知识后,要注重实践。
(4)要有毅力。
在课程设计过程中,有可能会遇到许多问题,有些问题可以通过自己的能力去解决。
但有些问题会困扰许久,有可能会稀里糊涂的就过掉。
这时候,可以向老师或者同学请教。
12
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工资管理 系统 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)