数据库课程设计工资管理系统
- 格式:docx
- 大小:18.76 KB
- 文档页数:12
工资管理系统 课程设计一、课程目标知识目标:1. 理解工资管理系统的基本概念、功能及重要性;2. 掌握工资管理系统中的数据结构、算法及数据库操作;3. 学会分析企业工资管理的需求,设计合理的工资管理系统。
技能目标:1. 能够运用所学知识,独立完成工资管理系统的模块划分与功能设计;2. 能够运用数据库技术,实现工资数据的存储、查询、统计和输出;3. 能够运用编程语言,开发简单的工资管理系统,解决实际问题。
情感态度价值观目标:1. 培养学生对企业信息化管理的认识,提高对信息技术的兴趣和热情;2. 培养学生的团队协作意识,学会与他人共同分析问题、解决问题;3. 培养学生具备良好的职业道德,关注企业员工薪酬权益,树立公平、公正的价值观。
课程性质:本课程为信息技术与学科实践相结合的课程,以实践操作为主,理论学习为辅。
学生特点:六年级学生具备一定的计算机操作能力和编程基础,对新鲜事物充满好奇心,喜欢动手实践。
教学要求:结合学生特点,注重理论与实践相结合,以任务驱动、案例教学为主,培养学生的实际操作能力和解决问题的能力。
将课程目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 工资管理系统概述- 工资管理系统的定义与作用- 工资管理系统的基本功能模块2. 数据库基础- 数据库的基本概念- 数据表的设计与创建- 数据的增、删、改、查操作3. 工资管理系统的设计与实现- 系统需求分析- 模块划分与功能设计- 数据库设计与实现- 系统界面设计4. 编程实现工资管理系统- 选择合适的编程语言(如Python、Java等)- 编程实现各功能模块- 调试与测试5. 案例分析与实操- 分析实际企业工资管理案例- 结合所学知识,进行实操演练6. 课程总结与拓展- 总结课程重点知识- 探讨工资管理系统的发展趋势和新技术教学内容安排和进度:第1-2周:工资管理系统概述与数据库基础第3-4周:工资管理系统的设计与实现第5-6周:编程实现工资管理系统第7-8周:案例分析与实操第9-10周:课程总结与拓展教材章节及内容关联:《信息技术》六年级下册:第三章 数据库与数据处理第四章 管理信息系统第五章 编程解决问题教学内容确保科学性和系统性,注重理论与实践相结合,以培养学生的实际操作能力和解决问题的能力。
工资管理系统课程设计目标一、课程目标知识目标:1. 理解工资管理系统的基本概念和功能,掌握其在我国企业中的应用情况。
2. 学会使用数据库管理软件进行工资数据的录入、查询、修改和删除等操作。
3. 掌握工资计算的相关知识,如基本工资、加班工资、奖金、个人所得税等计算方法。
技能目标:1. 能够独立操作工资管理系统,完成员工工资的核算、发放和报表生成。
2. 培养学生运用信息技术解决实际问题的能力,提高数据处理和分析的技巧。
3. 提高学生的团队协作能力,通过小组讨论和项目实践,学会与他人共同解决问题。
情感态度价值观目标:1. 培养学生对工资管理系统工作的兴趣,激发学习热情,提高学习积极性。
2. 增强学生的职业责任感,使其认识到工资管理工作的严谨性和重要性。
3. 培养学生尊重劳动、尊重他人劳动成果的良好品质,树立正确的价值观。
分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 学生能够独立完成工资管理系统的基本操作,达到熟练运用水平。
2. 学生能够运用所学知识解决实际工资管理问题,提高解决问题的能力。
3. 学生通过课程学习,增强团队协作意识,提高沟通能力。
4. 学生树立正确的劳动观念,提高职业素养,为将来从事相关工作打下坚实基础。
二、教学内容根据课程目标,本章节教学内容主要包括以下几部分:1. 工资管理系统概述- 工资管理系统的基本概念与功能- 工资管理系统在我国企业中的应用2. 工资管理系统操作- 数据库管理软件的基本操作- 工资数据的录入、查询、修改和删除3. 工资计算方法- 基本工资计算- 加班工资、奖金计算- 个人所得税计算4. 工资发放与报表生成- 工资发放流程- 工资报表的种类与生成方法5. 案例分析与项目实践- 分析实际工资管理案例- 小组项目实践,完成工资管理操作教学内容按照以下教学大纲安排和进度:第一周:工资管理系统概述、数据库管理软件基本操作第二周:工资数据录入、查询、修改和删除第三周:工资计算方法第四周:工资发放与报表生成第五周:案例分析与项目实践本章节内容与教材相关章节紧密关联,确保科学性和系统性,旨在帮助学生掌握工资管理系统的相关知识,提高实际操作能力。
数据库应用系统设计大作业人事工资
管理
1
2
武汉工业学院
- 第 1学期
<数据库应用系统设计>
<人事工资管理>
学生学号:
学生姓名: 张海燕
所在班级: 信管二班
任课教师: 林菁
12月25日
人事工资管理系统设计
一、系统设计的目的
考虑到使用传统的人工方式来对各企事业人事工资进行管理带来的效率低下以及操作复杂等诸多弊端,我们为能够极大地提高人事管理的效率,优化单位的科学、正规化管理,而且与世界接轨。
故开发了此系统来尽可能提高管理效率。
二、需求分析
经过我们小组的讨论,实践并参考一些资料得出比较完全的人事工资管理系统必须包括以下几个模块:企业基础设施部分,职工档案管理部分,考勤记录管理部分,职工的事假病假管理部分、工资发放管理部分,同时为达到系统的完善性处理,也设置了退出系统模块和帮助模块。
系统的基本功能主要包括:部门信息的管理(查询、添加、修改、删除学生部门等)、职员信息的管理(录入、查询、修改、删除员工的信息等)、工资信息的管理(录入、查询、修改员工的工资等)。
总之为帮助企业人力资源部门提高工作效率,实现人事信息管理的系统化、规范化和自动化。
根据这个系统所要实现的目的和任务,调查分析总结出该系统实现以上功能。
1)、经过分析所见表格详细介绍如下:
各个表的基本情况如下:
(1)政治面貌表
2
表1
(2)职称类型表
表2
(3)、用户表
表3
(4)、学历类型表
表4
(5)、员工基本信息表
3。
数据库课程设计设计题目:工资管理系统班级:学号:姓名:任务分配表目录一绪论 (3)二需求分析 (3)三概要设计 (4)四物理设计 (5)五详细设计 (6)六调试分析 (9)七小结 (16)八附件 (16)一、绪论随着计算机技术的飞速发展和经济体制改革的不断深入,传统企业管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成员工工资管理工作。
提高公司企业管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。
基于C#与SQL server数据库技术建立一个通用工资管理系统,该系统为提供了查询、增加记录、删除等功能,功能比较的齐全,并对工资进行了统计如津贴管理、报表统计等。
基本上能满足管理员和公司的要求。
此次数据库课程设计的主要设计如下:原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。
需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。
主要包括两大大功能模块:1.管理员管理界面设计。
2.员工管理界面设计。
二、需求分析功能需求分析:该通用工资管理系统具备下列功能:管理员通过输入用户名和密码进下该系统后,可以进行一些基本查询(员工信息查询、工资奖金信息查询)、工资管理(计算总工资、奖金管理);通过输入密码,可以进行查询员工的数据(工资,奖金,税收等)。
具体功能的详细描述如下1、在首页进行选择,员工与管理员通道2、点击[管理员登陆]3、用户名和密码即可进入 [工资管理]功能窗体,在此可以选择功能,添加,查询,人员列表4、点击[添加]功能窗体,添加员工工资信息。
5、点击[查询]功能窗体,输入员工号即可查询员工信息。
6、点击[人员列表]功能窗体,可查看所有员工的列表,这界面内可以进行删除操作。
7、点击[员工登陆]8、用户名和密码即可进入 [员工工资查询]功能窗体,在此可以选择查询基本信息,查询工资信息。
9、在[查询基本信息],员工可自己查看自己的信息。
10、在[查询工作信息],员工可自己查看自己的工作信息。
sqlssms工资管理系统课程设计一、课程目标知识目标:1. 学生能掌握SQL Server Management Studio(SSMS)的基本操作和功能;2. 学生能理解工资管理系统的基本需求,学会使用SQL语句进行数据库的创建和管理;3. 学生能掌握使用SQL语句进行数据查询、插入、更新和删除等基本操作;4. 学生能了解工资管理系统中数据表之间的关系,并运用SQL语句进行关联查询。
技能目标:1. 学生能独立使用SSMS创建和管理数据库;2. 学生能编写SQL语句实现工资管理系统的数据操作;3. 学生能运用所学知识解决实际工资管理中的问题;4. 学生能在团队中协作,共同完成工资管理系统的设计与实现。
情感态度价值观目标:1. 培养学生对数据库管理工作的兴趣,激发学习热情;2. 培养学生严谨、细致的学习态度,提高实际操作能力;3. 培养学生团队协作精神,提高沟通与协作能力;4. 培养学生遵守国家法律法规,保护数据安全的意识。
课程性质:本课程为实践性较强的课程,结合实际工资管理系统案例,使学生掌握数据库管理和SQL语句的使用。
学生特点:学生具备一定的计算机操作基础,对数据库管理有一定了解,但实际操作能力有待提高。
教学要求:结合课程特点和学生实际,采用案例教学、任务驱动等教学方法,注重实践操作,提高学生的动手能力。
同时,注重培养学生的团队协作和沟通能力,提高其综合素质。
通过本课程的学习,使学生能够将所学知识应用于实际工作中,为未来职业发展奠定基础。
二、教学内容1. 工资管理系统概述:介绍工资管理系统的基本功能、业务流程及其在企业管理中的作用。
- 教材章节:第一章 数据库基础知识2. SQL Server Management Studio(SSMS)基本操作:学习SSMS的安装与配置,掌握其主要功能模块。
- 教材章节:第二章 SQL Server管理工具3. 数据库创建与管理:学习创建数据库、数据表,以及如何进行数据备份与恢复。
延安大学计算机学院实验报告专用纸实验室:软件工程实验室学号:实验日期:2013年11月日(1)。
需求分析工资管理信息系统对企业加强工资管理有着极其重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等等.在做这个管理系统时,我们既咨询了父母又结合了教师等不同行业人士的工资情况,发现该系统受些许因素牵制比如说:公司大小,人员流动性,员工学历等通过我们的了解调查最终总结出系统功能如下:a。
整体结构合理, 模块化结构利于操作。
b。
完整的数据输入,输出,维护.c。
拥有不错的自检性,用户输错或误输均有提示。
d. 拥有较强的容错性,某个用户的错误操作不会引起系统的瘫痪。
e. 程序接口灵活,以便日后操作与维护。
f. 在不影响系统功能的前提下,美化操作界面.(2)。
概念设计○1E-R图错误!数据流图(3).逻辑设计基本信息(员工编号号,姓名,性别,毕业学校,所学专业,学历,电话,住址,从事岗位).考勤信息表(员工编号,姓名,请假天数,矿工天数,月迟到次数,月份).加班信息表(员工编号,姓名,晚班加班(天),周末加班(天),春节加班(天),节假日加班(天),月份)。
岗位信息表(员工编号,姓名,从事岗位,基本工资,部门名称)。
部门信息表(部门编号,部门名称,部门经理,部门人数)根据基本表创建了如下视图:加班津贴(员工编号,姓名,加班薪酬,月份)缺勤扣除表(员工编号,姓名,扣除工资,月份)月工资表(员工编号,姓名,基本工资,扣除工资,加班薪酬,实得工资,月份)年终奖(员工编号,姓名,奖(4).数据字典视图的创建:(5)。
系统的实现开发环境:SQL server 2005及eclipse○,1用SQL语言创建数据库Array 1.基本信息表(JBXX)Create table JBXX(Empno int not null primarykey,Emname varchar(8) not null,Sex char(2)check(Sex=’ 男’or Sex=’女’),School varchar(20)null,Profession varchar(20) null,Education varchar(6) null,Phone char(11) null,Address varchar(15)null)3.加班信息表(OVERTIMEINFORMA TION)Create table OVERTIMEINFORMATION(Empno int not null ,Night int null,Weekend int null,Festival int null,Special int null,Themonth int not null,5。
课程设计(工资管理系统)一、课程目标知识目标:1. 让学生理解工资管理系统的基本概念,掌握其功能模块和工作流程。
2. 使学生掌握工资管理系统中的数据录入、查询、修改和删除等基本操作。
3. 帮助学生了解我国工资制度的相关法律法规,并能在实际操作中运用。
技能目标:1. 培养学生运用信息技术解决实际问题的能力,能独立操作工资管理系统。
2. 提高学生的团队协作能力,通过小组讨论和分享,共同解决操作过程中遇到的问题。
3. 培养学生分析、设计和优化工资管理系统的能力,为将来从事相关领域工作打下基础。
情感态度价值观目标:1. 培养学生认真负责的工作态度,注重细节,确保工资管理数据的准确性。
2. 激发学生对信息技术学科的兴趣,提高学习积极性,树立学习信心。
3. 增强学生的法律意识,使他们在实际操作中遵循国家法律法规,养成良好的职业道德。
分析课程性质、学生特点和教学要求,本课程旨在通过理论教学与实际操作相结合,帮助学生掌握工资管理系统的相关知识,培养实际操作能力。
课程目标具体、可衡量,便于学生和教师在教学过程中明确预期成果,并为后续教学设计和评估提供依据。
二、教学内容1. 工资管理系统概述- 了解工资管理系统的基本概念、功能和作用- 分析工资管理系统的类型及适用场景2. 工资管理系统模块介绍- 学习工资管理系统的主要模块,如员工信息管理、工资项目管理、工资计算、报表生成等- 掌握各模块的功能和操作方法3. 工资管理系统的操作流程- 学习工资管理系统的操作流程,包括数据录入、查询、修改、删除等- 掌握工资管理系统的权限设置和安全管理4. 工资管理系统在实际应用中的案例分析- 分析实际企业工资管理案例,了解工资管理系统的应用场景- 学习企业工资管理中的法律法规及合规要求5. 教学实践与操作- 安排学生进行工资管理系统的实际操作,巩固所学知识- 组织小组讨论,分享操作经验,解决实际问题6. 工资管理系统优化与拓展- 学习如何根据企业需求,优化工资管理系统功能- 探讨工资管理系统的发展趋势和新技术应用教学内容依据课程目标,遵循科学性和系统性原则,结合教材相关章节,制定详细的教学大纲。
数据库-工资管理系统(总34页)本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March1 需求分析1.1系统分析对于一个企业来说,正确、及时而且规范地进行员工工资的管理和发放无疑就是十分重要的。
由于工资计算往往涉及多方面的数据,对于每位员工往往需要单独计算,在员工数量较多时,工资管理的工作量就会变得很大,而且在重复的数据输入和计算中容易出错。
利用数据库对企业职工工资进行管理是数据库技术在当代企业管理中的一个重要应用。
利用数据库技术,可以保证工资数据的安全完整。
本系统通过对企业基本信息管理、工资管理、奖惩管理3个环节的数据收集,建立现代企业工资管理系统,实现有用数据的快速查询,减少操作中可能出现的错误以及减少数据管理的工作量。
1.2系统功能设计在本系统中,主要功能包括:(1)保存职工的基本信息资料(2)根据工资管理数据和员工的奖惩情况对职工每月的工资进行计算。
(3)将职工工资的数据进行保存,便于查找和核实。
(4)对保存的数据,可以根据特殊字段进行查找。
图1.1是本系统的功能模块图。
图1.1 系统功能模块图2 概要设计2.1数据库的建立使用SQL创建一个名为“工资”的数据库。
2.2工资数据表的设计在本数据库中,将建立3个数据表,其功能如下:员工基本信息:用于存放员工的基本信息情况,包括员工的民族、出生年月、部门等。
员工工资表:用于存放员工的基本工资、交通补助等。
员工奖惩记录:用于记录员工的奖惩类别和奖惩原因等。
这3个数据表的结构如表2.21至表2.23所示。
图2.21 员工基本信息表设计图2.22 员工工资表的设计图2.23 员工奖惩记录表的设计E-R图3 详细设计3.1工程的建立在“开始”菜单中启动VB,将弹出“新建工程”窗体如图3.1所示。
在该窗体的“新建”选项卡中选择“标准EXE”,单击“打开”按钮,系统将生成一个新工程,默认名称为“工程1”,如图3.1所示。
课程设计报告书年 月1 设计时间2 设计目的掌握数据库的设计3设计任务设计一个工资管理系统4 设计内容〔1〕目标:1)实现月工资计算;2)实现与工资管理有关的档案管理。
3)提高工资管理工作效率,降低出错率。
〔2〕功能要求:档案管理1)保存有关工资计算以及工资管理所必须的数据2)能对数据进行查询、统计工资计算1)正确计算出个人月工资、部门月工资以及全厂月工资。
2)能对病假扣款系数进行修正。
3)能统计工资计算表、个人工资单、部门工资单、工资汇总表四种表格。
需求分析工资管理信息系统对企业加强工资管理有着极其重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比方拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比方工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等等。
由于设计时间本设计事一个简单模型,该公司目前对工资管理的要求并不高。
因此,针对该公司而言,我们经过了反复地论证,最终确定了工资管理系统的设计方案。
该工资管理系统的主要功能如下图:图4-1概念结构设计图4-2职工技术职称性别 出生日期参加工作日期所属部门人员类别工种类别 技术等级职工号文化程度 现住址籍贯民族工资管理系统职工基本信息 工资结构设置 工资汇总资料输入职工增删职工查询基础工资岗位工资工龄工资岗位工资工龄工资图4-3图4-4工资表岗位津贴住房补贴职务津贴物价补贴房租缺勤扣除工资加班费出勤表职工出勤日数工伤日数 产假日数旷工日数病假日数事假日数 加班日数夜班日数 病假系数图4-5 总ER 图逻辑结构设计职工表〔职工号 技术等级 性别 出生日期 参加工作日期 所属部门 人员类别 工种职别技术职称 文化程度 民族 籍贯 现住址 〕工资表〔技术等级 职工的基本工资 岗位津贴 物价补贴 职位津贴 住房补贴 房租〕出勤表〔职工号 职工出勤 工伤日数 产假日期 病假日期 旷工日期 事假日期 加班日期 夜班日期 病假日期〕物理结构设计职工表4-1字段名称 类型 是否为空 主关键字 取值范围 备注 职工号 char 否 Y 主键 char 否 N 性别 char 否 N 出生日期datetime否N职工出勤表工资表职工号 性别 民族职工号 技术等级物价补贴 岗位津贴物价补贴住房补贴 技术等级加班费 旷工日数加班日数职工代号工伤日数产假日数事假日数病假日数影响影响参加工作datetime 否 N日期所属部门 char 否 N人员类别 char 否 N工种职别 char 否 N技术等级 char 否 N技术职称 char 否 N文化程度 char 否 N民族 char 否 N籍贯 char 否 N现住址 char 否 N工资表4-2字段名称 类型 是否为空 主键字 取值范围 备注 技术等级 char 否 Y 主键 岗位津贴 int 否 N物价补贴 int 否 N职务津贴 int 否 N住房补贴 int 否 N房租 int 否 Nint 否 N缺勤扣除工资加班费 int 否 N出勤表4-3字段名称 类型 是否为空 主键字 取值范围 备注 职工号 char 否 Y 主键 int 否 N职工的出勤日数工伤日数 int 否 N产假日数 int 否 N病假日数 int 否 N旷工日数 int 否 N事假日数 int 否 N加班日数 int 否 N夜班日数 int 否 N病假系数 int 否 N数据库实现职工号 char(10) primary key,create table ZG(char(10) not null,性别 char(10) not null,出生日期 datetime not null,参加工作日期 datetime not null ,所属部门 char (20) not null,人员类别 char(10) not null,工种职别 char (10) not null,技术等级 char (10) not null,技术职称 char (10) not null,文化程度 char (10) not null,民族 char (10) not null,籍贯 char (10) not null,现住址 char (10) ) not null;技术等级 char(10) primary key not null, create table GZ(职工的基本工资 int not null ,岗位津贴 int not null ,物价补贴 int not null ,职务津贴 int not null,住房补贴 int not null,房租 int not null );职工号 char(10) primary key,create table CQ(职工的出勤日数 int ,公伤日数 int not null,产假日数 int not null ,病假日数 int not null,旷工日数 int not null,事假日数 int not null,加班日数 int not null ,夜班日数 int not null ,病假系数 int not null);数据载入职工表的数据图4-6工资表的数据图4-7出勤表的数据图4-8运行与测试设计系统查询功能及要求,写出主要的查询SQL语句,并给出运行结果。
目录第1章课程设计目的与要求 (2)1.1 课程设计目的 (2)1.2 课程设计的实验环境 (2)1.3 课程设计的预备知识 (2)1.4 课程设计要求 (2)第2章课程设计内容 (3)2.1 选题说明及需求介绍 (3)2.2数据库设计说明 (3)2.2.1概念设计 (3)2.2.2逻辑设计 (4)2.2.3建立数据库和基本表 (6)2.2.4定义基本表之间的关系 (7)2.3系统的功能模块划分 (7)2.4实现过程及完成效果介绍 (8)2.4.1实现过程简要说明 (8)2.4.1系统实现效果 (8)第3章课程设计总结 (13)参考文献 (14)课程设计目的与要求1.1 课程设计目的本课程的课程设计实际是计算机信息管理专业学生学习完《数据库原理与应用》课程后,进行的一次全面的综合训练,其目的在于加深对数据库基础理论和基本知识的理解,掌握运用数据库应用系统开发软件的基本方法。
1.2 课程设计的实验环境硬件要求能运行WindowsXP操作系统的微机系统。
数据库应用系统开发软件可以选用Microsoft Access 2003,或其他数据库管理系统。
1.3 课程设计的预备知识熟悉数据库的基本知识及一种以上数据库系统开发软件。
1.4 课程设计要求必须独立完成课程设计报告的撰写,不得抄袭他人或网上的社会实践报告,如有雷同,抄袭者和被抄袭者的成绩均为不合格,不能取得学分。
按课程设计指导书提供的课题,独立设计,要求书写详细的设计说明书,对复杂的代码段和程序段,应画出程序流程图。
在界面设计中,画出每个窗口的布局,有多个窗口时,按模块调用的方式画出窗口调用图。
要求书写规范、文字通顺、图表清晰、数据完整、结论明确。
课程设计内容2.1 选题说明及需求介绍选题说明:1、项目背景:数据库原理课程设计2、编写目的:掌握数据库设计原理及相关软件的使用3、软件定义:工资管理系统4、开发环境:Access2003需求分析:1、问题的提出:工资管理是现代企业管理中的一个部分,完善的工资管理系统可以有效的管理职工,可以提高对职工的管理,还能节省企业的费用。
工资系统数据库课程设计一、课程目标知识目标:1. 理解数据库在工资管理系统中的应用和重要性;2. 掌握工资管理系统的基本功能模块及其数据表结构设计;3. 学会运用SQL语句进行工资数据的查询、插入、更新和删除操作;4. 了解数据库的安全性和一致性原则在工资系统中的应用。
技能目标:1. 能够独立设计并实现一个简单的工资管理系统数据库;2. 能够运用所学知识,对工资数据进行有效管理和维护;3. 能够通过数据库查询和分析,解决工资管理中的实际问题;4. 学会使用数据库管理工具(如:MySQL、Oracle等)进行数据操作。
情感态度价值观目标:1. 培养学生对数据库技术在工资管理系统中的应用产生兴趣,提高学习积极性;2. 培养学生严谨、细心的数据处理能力和团队合作精神;3. 增强学生对信息技术的认识,使其意识到信息技术在企业管理中的重要作用;4. 培养学生尊重劳动、诚实守信的品质,提高社会责任感。
课程性质:本课程为实践性较强的课程,以培养学生的实际操作能力和解决问题的能力为主。
学生特点:学生具备一定的数据库基础知识和计算机操作技能,但可能对工资管理系统的实际应用了解不多。
教学要求:结合学生特点和课程性质,注重理论与实践相结合,以案例教学为主,培养学生的实际操作能力和分析解决问题的能力。
在教学过程中,关注学生的学习进度和情感态度,确保课程目标的实现。
通过课程学习,使学生能够将所学知识应用于实际工作中,提高其职业素养。
二、教学内容1. 工资管理系统概述- 了解工资管理系统的基本概念和功能模块;- 分析工资管理系统的业务流程。
2. 数据库设计基础- 学习数据库设计的基本原则和步骤;- 掌握实体关系模型和关系数据库设计方法。
3. 工资管理系统数据库设计- 设计工资管理系统所需的数据表结构;- 学习如何建立实体和关系,并进行属性定义。
4. SQL语句操作- 掌握SQL基本操作(查询、插入、更新、删除);- 学习运用SQL语句对工资数据进行管理。
课程设计报告企业工资管理系统姓名X X X班级XXXXX学号XXXXXX课程名称数据库原理及应用指导教师201X年X月X日目录一.工资管理系统需求分析…………………………………功能需求…………………………………………………功能划分………………………………………功能描述……………………………………………性能需求…………………………………………………数据流图………………………………………………二.总体设计…………………………………………………数据库概念设计…………………………………………功能模块…………………………………………………三.系统详细设计……………………………………………数据库逻辑设计…………………………………………各模块功能………………………………………………职工信息管理系统…………………………………职工工资管理系统…………………………………职工津贴管理系统…………………………………四.系统实现…………………………………………………界面截图…………………………………………………主界面及工资基本信息界面……………………登录界面…………………………………………系统主界面………………………………………信息录入,修改,删除,查询界面…………设计代码…………………………………………………五.实验总结…………………………………………………1、需求分析1.1功能需求功能划分(1)、员工信息表;及时反映员工(de)基本信息(2)、员工津贴表,反映员工津贴(3)、员工基本工资表功能描述(1)、基本工资(de)设定(2)、津贴(de)设定(3)、计算出月工资(4)、录入员工工资信息(5)、添加员工工资信息(6)、更改员工工资信息性能需求此工资管理系统对工资数据精度(de)计算能在默认情况之下精确到小数点后3位小数,即是精确到分(de)计算.但在用户使用过程中,能自行根据实际情况进行小数计算精度(de)设定,最大能允许保留小数点后5位(de)精度.在时间特性上,当用户发出命令请求时(de)服务器(de)响应时间、对数据更新处理、工资数据(de)查询检索等上,同样要求系统响应时间不会超过秒时间.系统支持多种操作系统(de)运行环境,多不同操作系统,不同文件格式(de)磁盘上(de)数据均能实现信息(de)互通,及共享.当服务器移植到其他(de)系统平台,如:Linux平台下时,同样能和其他(de)系统进行数据存取同步,不会出现系统之间互不兼容(de)情况,系统支持多系统之间(de)互连互通,系统有巨大(de)强健性.本课程设计是用Java 语言编写,mysql数据库.数据流图根据工资管理要求及用户需求调查分析,得到以下数据流图图第一层数据流图图职工信息(de)载入图考勤(de)信息载入2.总体设计数据库概念设计有了数据流图,用E-R图来说明工资信息管理系统(de)数据库概念模式,如图图实体之间关系E-R 图功能模块3.系统详细设计数据库逻辑设计将以上E-R转换成如下关系模式员工(职工号,姓名,密码)工资(职工号,姓名,基本工资,)津贴(职工号,姓名,奖金)其中,标有下划线(de)字段表示为该数据表(de)主码,即主关键字.在上面(de)实体以及实体之间关系(de)基础上,形成数据库中(de)表格以及各个表格之间(de)关系.工资信息管理系统数据库中各个表格(de)设计结果如下面(de)几个表格所示.每个表格表示在数据库中(de)一个表.表一:员工信息表:表二:基本工资表:表四:津贴信息表各模块功能职工信息管理系统功能为:财务部门相关人员录入、修改、删除、查询员工个人信息职工工资管理系统功能为:根据工资生成公式,按照员工(de)考勤情况及各种表现按月生成相应(de)工资;财务部门相关人员能录入、修改、删除、查询每个月每个员工(de)工资信息以及工资汇总;员工本人能查询自己(de)工资信息以及工资汇总;职工登陆查询系统功能为:员工本人能通过用户名和密码查询自己(de)信息以及修改自己(de)密码;4.系统实现界面截图主界面登录界面管理员管理工资界面信息录入,修改,删除,查询界面职工信息查询界面职工密码修改界面设计代码package wage_management;import .;import .;class DB extends JFrame implements ActionListener { JFrame frame = new JFrame("欢迎进入企业工资管理系统");JLabel label = new JLabel("", ;JButton button1 = new JButton("进入系统"); JButton button2 = new JButton("退出系统"); ImageIcon im = new ImageIcon("");JLabel a1 = new JLabel(im);void Create() {JPanel pcontentPane = (JPanel) ();(a1);(label);(new FlowLayout());(button1);(button2);(true);(this);(this);;();(200, 100, 550, 180);(true);}public static void main(String[] args) {DB dome = new DB();();}public void actionPerformed(ActionEvent e) { if ())) {DL dl = new DL();();();}if ())) {quals("admin") == true&& ().equals("admin") == true)) {(this, "登录成功");GZGLZJM gz = new GZGLZJM();();();}else {(null, "输入用户名或密码错误");}}if ()==logonButton2){try {Connection con;Statement ps;ResultSet rs;String sql = null;("");("").newInstance();con = ("jdbc: management","root","jxb");sql="select from workerinfo where name='"+t1+"' and mi='"+t2+"'";ps = (PreparedStatement) (sql);rs = (sql);if()){if("name").equals(t1) && ("mi").equals(t2)){YGDLJM yg = new YGDLJM();();();(this, "登录成功");();}}else {(this, "输入用户名或密码错误");}}catch (Exception e1) {// TODO Auto-generated catch block();}}if ())) // 退出{(0);}}}package wage_management;import GZGLZJM extends JFrame implements ActionListener {JFrame f = new JFrame("工资管理系统");JButton b1 = new JButton("工资管理");JButton b2 = new JButton("员工信息管理");JButton b3 = new JButton("返回");ImageIcon im = new ImageIcon("");JLabel a1 = new JLabel(im);void create() {JPanel p = (JPanel) ();(new FlowLayout());(a1);(b1);(b2);(b3);;(true);(this);(this);(this);(200, 100, 500, 200);(true);}public void actionPerformed(ActionEvent e) { if ())) {// 返回DL d = new DL();();();}if ())) {// 员工信息管理YGGL yg = new YGGL();();();}if ())) {// 工资管理GZGL gz = new GZGL();();();}}}package wage_management;import class GZGL extends JFrame implements ActionListener {JFrame f = new JFrame("工资管理");JButton b1 = new JButton("录入");JButton b2 = new JButton("修改");JButton b3 = new JButton("删除");JButton b4 = new JButton("查询所有");JButton b5 = new JButton("返回");JTextField tf1 = new JTextField(4);JTextField tf2 = new JTextField(4);JTextField tf3 = new JTextField(4);JTextField tf4 = new JTextField(4);JTextField tf5 = new JTextField(6);JTextField tf6 = new JTextField(7);String[] cloum = { "职工号", "姓名", "津贴", "月基本工资","月薪"};Object[][] row = new Object[50][5];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table); JSplitPane splitpane = new JSplitPane;void create() {JPanel p = (JPanel) ();(new FlowLayout());(scrollpane);(splitpane);JPanel p1 = new JPanel();(b1);(b2);(b3);(b4);(b5);JPanel p2 = new JPanel();;(scrollpane);JPanel p3 = new JPanel();(new FlowLayout());(new JLabel(""));(new JLabel("职工号"));(tf1);(new JLabel("姓名"));(tf2);(new JLabel("津贴"));(tf3);(new JLabel("月基本工资"));(tf4);(new JLabel("月薪"));(tf5);(new JLabel(" 在此处输入职工号点击查询删除"));(tf6);(p1, ;(p2, ;(50);;(this);(this);(this);(this);(this);(200, 100, 500, 600);(true);// 可以调整界面大小(true);}public void actionPerformed(ActionEvent e) {if ())) { // 录入Connection con;Statement sql;try {("");} catch (ClassNotFoundException e1) {"" + e1);}try {con = ("jdbc: management","root","jxb");sql = ();String insertStr = "INSERT INTO welfare (no,name,jt)VALUES('"+()+"','"+()+"','"+()+"');";(insertStr);String insertStr1 = "INSERT INTO wageinfo (no,name,jb)VALUES('"+()+"','"+()+"','"+()+"');";(insertStr1);();(this, "入录成功");} catch (SQLException e1) {(this, "入录失败");}}if ())) {// 修改Connection con;Statement sql;try {("");} catch (ClassNotFoundException e1) {"" + e1);}try {con = ("jdbc: management","root","jxb");sql = ();String updateStr = "UPDATE welfare SET jt='"+()+"',name='"+()+"'where no='"+()+"';";(updateStr);String updateStr1 = "UPDATE wageinfo SET jb='"+()+"',name='"+()+"'where no='"+()+"';";(updateStr1);(this, "修改成功");();} catch (SQLException e1) {(this, "信息不存在");}}if ())) {// 删除Connection con;Statement sql;ResultSet rs;try {("");} catch (ClassNotFoundException e1) {"" + e1);}try {con = ("jdbc: management","root","jxb");sql = ,;("DELETE FROM wageinfo where no='"+()+"';");("DELETE FROM welfare where no='"+()+"';");(this, "删除成功");();} catch (SQLException e1) {(this, "删除失败");}}if ())) {// 查询全部Connection con;Statement sql;ResultSet rs;//Vector vector = new Vector();try {("");} catch (ClassNotFoundException e1) { (this, "连接数据库失败");}try {con = ("jdbc: management","root","jxb");sql = ,;if ())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 4; j++)("", i, j);rs = ("select distinct from wageinfo ,welfare where =");int k = -1;while ()) {++k;String no = (1);String name = (2);String jb = (3);String jt = (6);int sum= (3)+(6);(no, k, 0);(name, k, 1);(jb, k, 3);(jt, k, 2);(sum,k,4);}}} catch (SQLException e1) {(this, "查询失败");}}if ())) {// 返回GZGLZJM gl=new GZGLZJM();();();}}}package wage_management;import class YGDLJM extends DL implements ActionListener {JFrame f = new JFrame("工资管理");JButton b1 = new JButton("查询个人工资");JButton b2 = new JButton("修改密码");JButton b3 = new JButton("返回");String[] cloum = { "职工号", "姓名", "津贴", "月基本工资","月薪"};Object[][] row = new Object[50][5];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table);JSplitPane splitpane = new JSplitPane;void create() {JPanel p = (JPanel) ();(new FlowLayout());(scrollpane);(splitpane);JPanel p1 = new JPanel();(b1);(b2);(b3);JPanel p2 = new JPanel();;(scrollpane);JPanel p3 = new JPanel();(new FlowLayout());(p1, ;(p2, ;(50);;(this);(this);(this);(200, 100, 500, 550);(true);// 可以调整界面大小(true);}public void actionPerformed(ActionEvent e) { if ())) {// 查询个人工资Connection con;Statement sql;ResultSet rs;try {("");} catch (ClassNotFoundException e1) {"" + e1);}try {con = ("jdbc: management","root","jxb");sql = ,;if ())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 4; j++)("", i, j);// rs = ("select distinct from wageinfo ,welfare,workerinfo where = and = and ='"+t1+"' and ='"+t2+"'");int k = -1;while ()) {++k;String no = (1);String name = (2);String jb = (3);String jt = (6);int sum= (3)+(6);(no, k, 0);(name, k, 1);(jb, k, 3);(jt, k, 2);(sum,k,4);}}} catch (SQLException e1) {(this, "查询失败");}}if ())){// 修改密码XGMM xgmm=new XGMM();();}if ())) {// 返回DL dl=new DL();();();}}}package wage_management;import class YGGL extends JFrame implements ActionListener {JFrame f = new JFrame("员工信息管理");JButton b1 = new JButton("添加新员工信息");JButton b2 = new JButton("修改员工信息");JButton b3 = new JButton("删除员工信息");JButton b4 = new JButton("查询所有员工信息");JButton b5 = new JButton("返回");JTextField tf1 = new JTextField(4);JTextField tf2 = new JTextField(4);JTextField tf3 = new JTextField(4);JTextField tf4 = new JTextField(4);JTextField tf5 = new JTextField(6);JTextField tf6 = new JTextField(7);String[] cloum = { "职工号", "姓名", "津贴", "月基本工资","月薪","登陆密码"};Object[][] row = new Object[50][6];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table);JSplitPane splitpane = new JSplitPane; void create() {JPanel p = (JPanel) ();(new FlowLayout());(scrollpane);(splitpane);JPanel p1 = new JPanel();(b1);(b2);(b3);(b4);(b5);JPanel p2 = new JPanel();;(scrollpane);(new FlowLayout());(new JLabel(""));(new JLabel("职工号"));(tf1);(new JLabel("姓名"));(tf2);(new JLabel("津贴"));(tf3);(new JLabel("月基本工资"));(tf4);(new JLabel("登陆密码"));(tf5);(new JLabel(" 在此处输入职工号点击查询删除"));(tf6);(p1, ;(p2, ;(50);;(this);(this);(this);(this);(this);(200, 100, 600, 600);(true);// 可以调整界面大小(true);}public void actionPerformed(ActionEvent e) {if ())) { // 添加新员工信息Connection con;Statement sql;try {("");} catch (ClassNotFoundException e1) {(this, "连接数据库失败");}try {con = ("jdbc: management","root","jxb");sql = ();String insertStr = "INSERT INTO welfare (no,name,jt)VALUES('"+()+"','"+()+"','"+()+"');";(insertStr);String insertStr1 = "INSERT INTO wageinfo (no,name,jb)VALUES('"+()+"','"+()+"','"+()+"');";(insertStr1);String insertStr2 = "INSERT INTO workerinfo (no,name,mi)VALUES('"+()+"','"+()+"','"+()+"');";(insertStr2);(this, "添加成功");();} catch (SQLException e1) {(this, "添加失败");}}if ())) {// 修改员工信息Connection con;Statement sql;try {("");} catch (ClassNotFoundException e1) {(this, "连接数据库失败");}try {con = ("jdbc: management","root","jxb");sql = ();con = ("jdbc: management","root","jxb");sql = ();String updateStr = "UPDATE welfare SET jt='"+()+"',name='"+()+"'where no='"+()+"';";(updateStr);String updateStr1 = "UPDATE wageinfo SET jb='"+()+"',name='"+()+"'where no='"+()+"';";(updateStr1);(updateStr1);String updateStr2 = "UPDATE workerinfo SET name='"+()+"',mi='"+()+"'where no='"+()+"';";(updateStr2);(this, "修改成功");();} catch (SQLException e1) {(this, "修改失败");}}if ())) {// 删除员工信息Connection con;Statement sql;try {("");} catch (ClassNotFoundException e1) {(this, "连接数据库失败");}try {con = ("jdbc: management","root","jxb");sql = ,;("DELETE FROM wageinfo where no='"+()+"';");("DELETE FROM welfare where no='"+()+"';");("DELETE FROM workerinfo where no='"+()+"';");(this, "删除成功");();} catch (SQLException e1) {(this, "删除失败");}}if ())) {// 查询全部员工信息Connection con;Statement sql;ResultSet rs;try {("");} catch (ClassNotFoundException e1) {(this, "连接数据库失败");}try {con = ("jdbc: management","root","jxb");sql = ,;if ())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 4; j++)("", i, j);rs = ("select distinct from wageinfo ,welfare,workerinfo where = and = ;");int k = -1;while ()) {++k;String no = (1);String name = (2);String jb = (3);String jt = (6);int sum= (3)+(6);String mi = (9);(no, k, 0);(name, k, 1);(jb, k, 3);(jt, k, 2);(sum,k,4);(mi,k,5);}}} catch (SQLException e1) {(this, "查询失败");}}if ())) {// 返回GZGLZJM gl=new GZGLZJM();();();}}}package wage_management;import XGMM extends DL implements ActionListener{JFrame frame = new JFrame("密码修改");JLabel label1 = new JLabel("原密码");JLabel label2 = new JLabel("新密码");JButton Button1 = new JButton("确定");JButton cancelButton = new JButton("返回");JPasswordField password = new JPasswordField(9);JPasswordField newpassword = new JPasswordField(9);void create(){JPanel p = (JPanel) ();(new FlowLayout());(label1);(5, 5);(4, 8);(password);(100, 200);(600, 600);(label2);(50, 20);(newpassword);(100, 20);(80, 120);(Button1);(cancelButton);;(true);(this);(this);;();(200, 100, 500, 220);(true);}public void actionPerformed(ActionEvent e) {if ()==Button1){Connection con;Statement sql;try {} catch (ClassNotFoundException e1) {(this, "连接数据库失败");}try {con = ("jdbc: management","root","jxb");sql = ();String updateStr = "UPDATE workerinfo SET mi='"+()+"'where name='"+t1+"';";(updateStr);(this, "修改成功");();} catch (SQLException e1) {(this, "请输入原密码和新密码");// }}if ()==cancelButton) // 返回{YGDLJM dl=new YGDLJM();();();}}}5.课设总结此次课设难度有点大,通过几天(de)努力终于完成了,开始对如何连接数据库不太了解,通过小组合作,和网上查阅资料,最终解决了问题,在写员工登陆界面时,要从数据库读取和验证密码,开始遇到了些问题,后来慢慢都完成了,总(de)来说收获很大,了解了如何将所学数据库运用到编程里,对数据库数据(de)查询,更改,添加都有了更一步(de)了解.。
数据库课程设计报告教师工资管理系统一、引言教师工资管理是教育机构中的一项重要工作,是保障教师合法权益的基础。
然而,由于工资管理涉及数据量大且多变的复杂问题,传统的手动计算已经不能满足教育机构管理的需要。
为此,应该开发一款便捷、高效、精确的教师工资管理系统。
二、系统需求分析教师工资管理系统主要涉及以下几个方面:1. 教师个人信息管理:记录教师的基本资料,并按照年度、学期、月份等进行归档管理。
2. 工资统计计算:根据教师的工龄、职称、工作量等因素,计算教师的工资,并记录在系统中。
3. 工资奖惩管理:根据教师的表现,对教师进行奖惩,并进行自动生成或手动录入。
4. 统计查询功能:提供多种方式的查询功能,以便教育机构管理者实时查询教师的工资情况。
三、系统设计方案1.系统结构系统采用B/S结构,即浏览器(Browser)/服务器(Server)结构。
教育机构管理者可通过浏览器打开系统界面,进行相应的教师工资管理。
2.数据库设计为了提高系统的数据存取效率,保证教师工资管理的可靠性,数据库采用MySQL。
设计数据库主要涉及以下几个表格:(1)教师表格:记录教师基本信息,包括姓名、性别、工号、职称、教龄等。
(2)薪资表格:记录教师每月的工资情况,包括基本工资、津贴、扣减项、实发工资等。
(3)奖惩表格:记录教师的奖惩情况,包括奖金、罚款、奖项等。
3.系统模块设计系统由以下模块所组成:(1)登录模块:输入用户账号和密码进行登录。
(2)个人信息管理模块:对教师基本信息进行新增、修改、删除、查询等操作。
(3)工资统计计算模块:根据教龄、职称、工作量等因素,计算教师工资,并记录在系统中。
(4)工资奖惩管理模块:通过录入奖惩信息,实现奖惩情况对工资的影响。
(5)工资查询模块:提供多种基本查询方式,如按照学期、年度、职称、教龄、工龄等查询。
(6)统计分析模块:根据不同的查询条件,对数据进行分析,帮助教育机构管理者对教师工资情况有清晰的认识。
工资管理系统数据库课程设计报告
设计工资管理系统的数据库需要考虑以下几个方面:
1.数据表设计:需要设计一个数据表来存储员工信息,包括员工ID、员工姓名、员工工资、员工职位等字段。
同时还需要设计一个数据表来存储薪资信息,包括薪资ID、员工ID、薪资水平、薪酬结构等字段。
两个数据表需要进行关联关系的设计,以实现员工信息与薪资信息的存储和查询。
2.关系设计:需要设计一个关系来将员工信息和薪资信息进行关联。
可以使用主外键关系来实现,其中员工信息表的主键是员工ID,薪资信息表的主键是薪资ID。
这样可以保证两个数据表的关联关系正确无误。
3.功能设计:需要考虑工资管理系统的各项功能,包括员工信息查询、薪资信息查询、员工信息修改、薪资信息修改等。
需要根据功能设计相应的操作界面和业务逻辑。
4.安全性设计:需要考虑工资管理系统的安全性,包括用户权限管理、数据备份和恢复、安全漏洞检测和修复等。
需要设计合适的安全措施,以保证数据和系统的安全。
5.性能设计:需要考虑工资管理系统的性能,包括查询速度、存储容量、数据更新速度等。
需要根据实际情况进行性能优化,以保证系统正常运行。
6.数据库备份和恢复:需要考虑数据库备份和恢复的能力,包括备份策略、备份文件大小、备份频率、恢复操作等。
需要设计合理的
备份和恢复方案,以保证数据的安全和完整性。
以上是设计工资管理系统数据库课程设计的几个方面,当然还有其他需要注意的问题,需要根据具体情况进行分析和设计。
软件工程课程设计报告题目:工资管理系统设计与实现班级:教师:学号:姓名:大学计算机科学与技术学院年月课程设计任务书姓名学号班级课程名称软件工程导论课程性质专业基础课设计时间2009 年9月20 日——2009年11 月12 日设计名称工资管理系统设计与实现项目组成员姓名学号在本项目中的分工代码实现文档编写设计要求使用传统软件工程方法对工资管理系统进行分析和设计,本程序是建立在Windows操作系统上,以VB为开发软件的应用程序,主要功能包括:人事信息的录入,修改,删除和查询操作:工资的核算查询;用户信息的管理等。
计划与进度9日20日至9月30日——学习项目开发的背景目标10日1日至10月7日——可行性研究10日8日至10月13日——系统分析(包括需求分析,数据流图,数据字典等)10日14日至10月24日——系统设计(包括功能设计,数据库设计及数据库的实现)10月25日至11月2日——系统实现11月3日至11月12日——软件测试及资料整理指导教师意见目录内容概要第一章引言1.1项目开发背景1.2项目开发的目标及意义1.3系统的开发方法第二章可行性研究2.1 系统流程图2.2 完成新系统的可行性第三章系统分析3.1 系统的设计思想3.2 需求分析3.3 系统的运行环境和开发平台3.4 数据流图3.5 数据字典第四章系统设计4.1 功能模块设计4.2 系统总体功能模块4.3 数据库设计4.4 数据库结构的实现第五章工资管理系统功能实现5.1 开发环境简介5.2 系统界面的设计5.3 员工基本信息管理功能设计5.4 工资管理功能设计第六章软件测试第七章用户操作手册第八章总结8.1 参考文献8.2 设计体会与建议内容摘要工资管理系统是使用Visual Basic 6.0开发的一个数据库管理系统。
在此主要讲述了使用SQL Server 2000和Visual Basic 6.0完成工资管理系统基本功能的过程。
以Visual FoxPro数据库为基础开发高校人事工资管理系统Visual FoxPro是一个强大的数据库开发工具,它能够快速、高效地开发出各种类型的应用程序。
在高校人事工资管理系统的开发过程中,Visual FoxPro可以为我们提供强有力的支持和帮助。
首先,我们需要明确高校人事工资管理系统的功能需求。
该系统应包括以下功能:1. 基础数据管理:包括员工基本信息、职务信息、部门信息等。
2. 工资管理:包括工资计算、社保管理、公积金管理等。
3. 绩效管理:包括考勤管理、工作绩效考核等。
4. 报表管理:包括各种统计报表、工资单等。
在设计数据库之前,我们需要根据需求分析,确定系统的数据结构。
以下是高校人事工资管理系统的数据结构:1. 员工信息表员工编号、姓名、性别、出生日期、籍贯、入职日期、身份证号码、驾照号码、电话号码、邮箱、家庭住址、学历、专业、毕业院校、部门名称、职务、职称等。
2. 部门信息表部门编号、部门名称、部门电话、部门地址、部门负责人、上级部门等。
3. 工资信息表员工编号、部门名称、上岗日期、基本工资、津贴、扣除项、社保费、公积金等。
4. 绩效考核表员工编号、考勤日期、迟到次数、早退次数、缺勤次数、工作任务完成情况、绩效等级等。
5. 报表统计表员工编号、姓名、部门名称、本月工资、社保费、公积金、所得税、实际发放工资等。
以上数据表是高校人事工资管理系统的核心数据,通过Visual FoxPro可以方便地创建和管理该系统所需的所有数据。
在设计数据库之后,我们需要根据需求分析,编写系统的各个模块。
以下是高校人事工资管理系统的主要模块:1. 基础数据管理模块该模块主要用于管理员工基本信息、职务信息、部门信息等。
管理员可以通过该模块进行添加、修改、删除员工、职务、部门等操作。
2. 工资管理模块该模块主要用于管理员工工资信息。
管理员可以通过该模块实现工资计算、社保管理、公积金管理等操作。
3. 绩效管理模块该模块主要用于管理员工考勤和绩效评估情况。
工资管理系统毕业设计学院:信息工程学院专业:运算机信息治理班级:06 级学号:06101068姓名:王小慧指导教师:万里年月日名目摘要引言1 系统需求分析2 工资治理系统的总体设计1 项目规划2 系统功能结构3 设计目标3 系统设计1 开发及运行环境2 数据库设计4 要紧功能模块设计1 建立工程框架2 封装数据库3 主窗口设计4 登录模块设计5 职员录入模块设计6 总体查询模块设计7 职职员资添加模块设计8用户治理模块设计结论谢词参考文献数据表摘要随着我国国民经济建设的蓬勃进展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的治理工具,不断改善企业的服务质量,提高工作效率。
不管是行政职能,依旧生产运作的治理要求的不断提高,在专门大程度上使企业不得不改变传统的经营治理方式以适应快速进展的社会主义市场经济,改变企业治理方式、方法差不多成为企业进展的先决条件。
建设一个科学高效的信息治理系统是解决这一问题的必由之路。
对企业内部的财务运用现代化技术进行治理,是提高工作效率的有效手段。
工资治理作为企业内部财务治理的一个重要方面,也逐步被企业治理者所重视,由于企业的规模的不断扩,大企业职工人数的不断增多,使工资发放成为企业治理中的一个重课题;再加上每一位职工的具体实际情形相同,规章章制度的不断完善,增大了个人工资发放难度;每个人每月的工资都要通过工资制度的审核,这大大增加了治理人员的工作量,通过运算机治理系统对职职员资进行全面的统计与治理,全面解决了工资治理过程中所遇到的各种问题,同时克服了传统治理方式中的易出错等问题。
工资治理系统成为企业现代化治理中的首选治理工具。
关键词治理系统现代化的工资治理引言传统的工资治理方法,差不多上通过人工统计和运算的治理方式进行的。
如此的治理方法不但费时费劲,也容易产生运算上的错误和疏漏;运算机技术的全面普及,打破了财务治理的传统治理方法,提高了治理效率的同时,克服了传统治理方法中易产生的问题,使治理员能够有序的、全面的对每一位职工进行治理,严格按照工资条款及发放制度运算并进展职职员资。
课程设计要求:1.对各个系统进行系统功能需求分析2. 数据库设计分析阶段,进行详细的数据库需求分析,进行概念数据库的设计,画出数据库的E-R图(局部和整体E-R图)3. 设计出详细的逻辑数据库结构,将各个实体和联系转化为相应的二维表即关系模式,指定各个关系的主关键字和外部关键字,并对各个关系的约束加以限定4. 通过企业管理器或是查询分析器实现各个二维关系(建议最好用SQL代码实现),要求建立相关的索引5. 根据系统功能需求设计相应的查询视图6. 要求根据系统功能需求建立存储过程7. 根据功能需求建立相应的触发器以保证数据的一致性8. 通过建立用户和权限分配实现数据库一定的安全性,考虑数据库的备份与恢复(此内容选作)一、需求分析企业的工资管理是公司管理的一个重要内容。
随着科学技术的发展,一些公司的规模也越来越大,职工的数量也在不断的增加,企业的管理工作也变得越来越复杂。
工资管理既涉及到企业劳动人事的管理,同时也是企业财务的重要组成部分。
面对如此大的信息量,单凭传统的表格、手工操作已不能满足实际的需要。
因此,我设计工资管理系统来提高财务管理方面的效率。
通过这个系统可以使信息的管理更加规范,统计更科学。
模块功能分析:(1)部门模块:用来管理部门;(2)工资模块:用来管理员工的工资;(3)职工模块:用来管理工厂的职工信息;二、概念结构设计经分析,本系统的e-r图如下:三、逻辑结构设计1.工资管理基本信息表①department(部门)②staff(职工)③salary(工资)①建库create database salary_manageon(name=salary_manage_data,filename='d:\salary_manage_data.mdf', size=25,maxsize=35,filegrowth=5)log on(name=manage_log,filename='d:\salary_manage_data.ldf', size=25,maxsize=35,filegrowth=5)②建表/建立职工表/create table staff(staff_no char(10) primary key,/*职工工号*/ staff_name char(20) not null,/*职工姓名*/staff_sex char(25) not null default '男'check( staff_sex in('男','女')),/*性别*/ enducational char(10) default '本科',/*学历*/dapartment_no char(8) not null,/*部门编号*/department_name char(15))/*部门名称*//*建立工资表*/create table salary(staff_no char(10) not null foreign key references staff(staff_no),/*职工工号*/m_salary int default 3000,/*月薪*/allowance int default 0,/*津贴*/out_days int not null check(out_days<=31 and out_days>=0),/*出勤天数*/ work_overtime datetime(10),/*加班时间*/w_overtime_days int default 0 check(w_overtime_days>=0 and w_overtime_days<=31),/*加班天数*/deduct int default 0,/*事故扣薪*/add_money int default 0,/*加班费*/issue_salary int(4) not null,/*应发薪水*/iss_salary int(4) not null)/*实发薪水*//*建立部门表*/create table department(department_no char(8) primary key,/*部门编号*/department_name char(15) not null,/*部门名称*/depart_manage char(6) not null,/*部门经理*/depart_people int(6)/*部门人数*/③添加记录insert into departmentvalues('071011','A部门','王经理',100);insert into departmentvalues('071012','B部门','李经理',200);insert into departmentvalues('071013','C部门','张经理',100);insert into staffvalues('0610','李明','男','本科','071011','A部门');insert into staffvalues('0613','张三','男','专科','071011','A部门');insert into staffvalues('0611','刘丽','女','本科','071012','B部门');insert into staffvalues('0612','张新','男','本科','071013','C部门');insert into salaryvalues('0610',3000,100,30,'2011-10-8',2,50,0,3000,3200); insert into salaryvalues('0611',3000,0,20,'',0,0,500,3000,2500);insert into salaryvalues('0612',3000,100,31,'2011-10-10',1,50,0,3000,3150);四、功能处理1、查询①表查询select * from department /*查询部门表*/select * from staff /*查询职工表*/select * from salary /*查询工资表*/②数据查询select salary.staff_no,staff_name,issue_salary,iss_salaryfrom salary,staffwhere iss_salary>3000 and salary.staff_no=staff.staff_noorder by salary.staff_noselect staff_no,staff_name from staffwhere staff_name like '刘%';2、数据更新①插入(前面已插入)②修改update salaryset iss_salary =1.2*iss_salarywhere iss_salary<2600;③删除delete from staffwhere enducational='专科';3.索引①建立索引create index jon salary(staff_no,issue_salary,iss_salary)create unique index index_staffon staff(staff_name)create unique index index_departon department(depart_people)②查询索引exec sp_helpindex salaryexec sp_helpindex staffexec sp_helpindex department③修改索引exec sp_rename 'salary.j','salary_index'④删除索引drop index index4.视图①创建视图create view table_salary(staff_no ,staff_name,issue_salary,iss_salary)as select salary.staff_no,staff_name,issue_salary,iss_salaryfrom salary,staffwhere salary.staff_no=staff.staff_no②查找视图select * from table_salary③/*修改视图*/Alter view table_salary(staff_no ,staff_name ,department_name,issue_salary,iss_salary)as selectsalary.staff_no,staff_name,department_name,issue_salary,iss_salaryfrom salary,staffwhere salary.staff_no=staff.staff_no;④删除视图drop view table_salary5.存储过程①创建存储过程。
create procedure pro_staff(@staff_no char(10),@staff_name char(25),@staff_sex char(25),@enducational char(10),@department_no char(8),@department_name char(15))asinsert into staff values(@staff_no,@staff_name,@staff_sex,@enducational,@department_no,@department_name)update departmentset depart_people=depart_people+1where department_no=@department_nocreate procedure pro_salaryas(@m_salary int,@allowance int,@add_money int,@deduct int)asupdate salaryset iss_salary = (@m_salary + @allowance+@add_money- @deduct )where m_salary=@m_salary and allowance=@allowance and add_money=@add_money and deduct=@deduct②查看存储过程exec sp_helptext pro_staffexec sp_helptext pro_salary③执行存储过程exec pro_staff @staff_no='0614',@staff_name='王敏',@staff_sex='女', @enducational='本科',@department_no='071011', @department_name='A部门';④删除存储过程drop procedure pro_staff6.触发器①创建触发器create trigger mon salaryfor updateasif update(m_salary)beginrollback transactionprint'月薪不能修改,请联系财务科'endCREATE TRIGGER TRI_salaryON salaryFOR update,insertASBEGINupdate salary set add_money=(w_overtime_days*50)update salary set issue_salary = m_salaryupdate salary set iss_salary = (m_salary+allowance+add_money - deduct )ENDcreate trigger tri_departmenton departmentfor insertasdeclare @staff_no char(8)declare @department_no char(15)update departmentset depart_people=depart_people+1where department_no=@department_nocreate trigger tri_changeon stafffor deleteasbegindeletefrom salarywhere salary.staff_no=any(select staff_no from deleted)update departmentset depart_people=depart_people-1where department_no=any(select department_no from deleted)end②触发器的删除drop trigger tri_department;7.用户与权限/*创建登陆账号*/exec sp_addlogin 'zhangsan','1234','salary_manage',null/*把用户加入到数据库中*/exec sp_adduser 'zhangsan'/*删除登陆账号*/exec sp_droplogin 'zhangsan'/*系统权限*/grant create tableto zhangsan/*收回系统权限*/revoke create tablefrom zhangsan/*对象权限*/grant allon staffto zhangsanwith grant optiongrant selecton salaryto public/*收回系对象权限*/revoke select on salaryfrom zhangsan五.实验总结本报告主要介绍的是对自建的一个工资管理系统数据库,利用在数据库中的表、存储过程、视图、约束等组合,设计出比较实用的应用软件代码;对表中的信息能够进行简单的查询,子查询,视图的创建、修改与删除,与约束的创建,存储过程与触发器的创建与删除等基本操作,加深对SQL Server数据库的进一步研究。