工资管理系统数据库设计报告(数据库课程设计汇本)模板
数据库设计报告——工资管理系统

数据库设计报告——工资管理系统一、引言工资是公司和员工之间的一种交换方式,是员工为公司所做的工作得到相应报酬的一种形式。
在一个公司或组织中,工资管理系统是一项重要的任务,它涉及到员工信息、薪资核算、工资发放、工资统计等内容。
为了提高工资管理的效率和准确性,设计一个合理的数据库是非常重要的。
二、数据库设计目标1.提供员工信息的录入和管理功能;2.提供员工工资的计算和发放功能;3.提供工资统计和报表生成功能;4.提供数据的安全和备份功能。
三、数据库设计方案1.员工信息表设计2.薪资核算表设计薪资核算表是根据员工的职位和工作时长计算薪资的依据。
薪资核算表包含员工ID、员工姓名、职位、工作时长、基本工资、加班工资、补贴等字段。
根据这些字段进行合理的计算,得出员工的最终工资。
3.工资发放表设计工资发放表记录了每一次工资的发放情况,包括员工ID、员工姓名、发放时间、工资金额等字段。
可以根据这些字段进行工资的发放和工资单的打印。
4.工资统计表设计工资统计表主要用于统计和分析公司员工的工资情况,如平均工资、最高工资、最低工资等。
可以根据职位、部门等维度进行统计,生成相应的报表和图表。
5.数据库安全与备份方案为了保障数据的安全和完整性,需要对数据库进行安全设置。
可以设置访问权限,只允许授权人员进行数据的录入、修改和查询。
此外,还需要定期备份数据库,以防止数据丢失。
四、数据库设计实施1. 选取合适的数据库软件,如MySQL、Oracle等;2.创建数据库,并创建员工信息表、薪资核算表、工资发放表、工资统计表等表结构;3.设计合适的数据录入界面,用于员工信息的录入和管理;4.设计薪资计算和发放功能,确保工资的准确性和及时性;5.设计工资统计和报表生成功能,方便管理层进行分析和决策;6.设置数据库的安全权限,并定期备份数据库。
五、数据库设计总结工资管理系统是一个关键的人力资源管理系统,数据库设计的合理性和准确性直接影响到工资管理的效率和准确性。
工资管理系统数据库课程设计报告

工资管理系统数据库课程设计报告姓名:* *班级:计科 0613学号:0902061307指导老师:刘嫔时间:2010年1月目录第一章概述1.1项目背景 (3)1.2编写目的 (3)1.3软件定义 (3)第二章需求分析2.1 数据库需求分析 (4)2.2 功能陈述 (4)2.3 数据流图 (4)2.4功能流程图 (6)2.5 E-R模型图 (7)第三章数据库逻辑设计3.1 表的定义 (10)第四章系统模块的具体实现 (12)第五章结束语5.1系统运行与测试 (25)5.2 心得体会 (25)参考文献 (26)第一章概述1.1项目背景随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,对企业体系无论是在行政职能、企业管理水平以及优质服务上都提出更高的要求。
建设一个科学高效的信息管理系统是解决这一问题的必由之路。
企业内部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。
工资管理作为企业内部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的工资管理系统对员工工资等进行系统的管理,很难实现企业高效运转。
1.2编写目的巩固课堂知识,加深对数据库系统的了解领会数据库理论与软件开发实践的关系培养良好的编程习惯,熟悉软件开发的基本流程1.3软件定义1.3.1软件名称工资管理系统1.3.2 系统的主要功能此工资管理系统的主要任务是用计算机对各种工资信息进行日常的管理,如查询、修改、增加、删除以及存储等,迅速准确地完成各种工资信息的统计计算和汇总工作,快速打印出工资报表,针对系统服务对象的具体要求,设计了企业工资管理系统。
企业工资管理系统主要有以下几大功能:对单位人员的变动进行处理。
一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位内部调动。
工资管理系统-课程设计报告报告

《工资管理系统》课程设计报告题目:工资管理系统专业:网络工程班级::指导教师:成绩:计算机学院2017年12月8日目录一、工资管理系统数据库设计 (1)1、项目背景介绍 (1)1.1 数据需求分析及数据字典 (1)1.2 概念结构设计 (2)1.3 逻辑结构设计 (3)1.4 数据库物理设计 (5)二、工资管理系统数据库实施步骤 (5)1、项目实践 (5)1.1 数据库的创建 (5)1.2 表对象的创建 (6)1.3 索引对象的创建 (13)1.4 视图对象的创建 (14)1.5 登录用户的创建 (15)三、工资管理系统数据库管理 (16)1、案例实践 (16)1.1 案例试验数据 (16)1.2 表数据的编辑 (17)1.3 表数据的简单查询 (21)1.4 表数据的联接查询 (18)四、项目总结 (22)五、参考文献 (23)一、工资管理系统数据库设计1、项目介绍工资管理系统的功能是收集员工的个人信息,以便实现按照科室录入个人的基本资料,向各科室发放个人工资和计算个人的实际发放工资,可以让相关财务部门及领导查看各科室人数情况和工资金额,还可以让员工用自己的员工号去查看自己的工资和扣除金额的情况。
工资管理系统的主要功能有:(1)、按照科室录入个人的基本资料,工资和扣除金额的数据;(2)、计算个人的实际发放工资;(3)、按科室、职业分类统计人数和工资金额;(4)、实现员工个人信息和工资的分类查询;(5)、能够删除辞职人员的数据;工资管理:包括与工资发放相关的各种数据处理,以及对这些处理的有机组织规划;人事管理:主要指对各种员工人事信息的管理,包括员工的基本情况和升迁离职情况;工资项目:影响工资计算的各种因素,如:基本工资,福利补贴和奖励工资,扣除的事业保险和住房公积金等等。
用户登录管理:2种权限,一种是管理员权限,可以做任何操作;一种是普通用户权限只可以查看自己的工资及基本信息,不能编辑,也不能查看其他用户信息。
课程设计--高校工资管理系统数据库设计报告

工资管理系统数据库设计报告设计题目:工资管理系统学生姓名:系别:电气信息工程系专业:计算机科学与技术班级:学号:2010 年11月30 日目录目录 (2)一、引言 (3)二、需求分析 (4)三、系统功能分析 (5)四、E-R图……………………………………….错误!未定义书签。
五.数据流程图 (11)六.逻辑结构设计 (12)七.关系图 (18)一引言1.1编写目的1.掌握工资管理系统设计的一般方法,主要包括系统分析、系统设计的组织和实施。
2.关系型数据库管理系统的编程技术,并能独立完成一般小系统的程序设计、调试运行等工作。
3.培养把所学知识运用到具体对象,并能求出解决方案的能力。
1.2背景随着高等学校的快速发展,高校规模越来越大,教职工的数量也越来越多,高校工资管理更加的复杂,而工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行工资发放工作,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,同时计算机具有着手工管理所无法比拟的优点。
因为此数据库是为工资管理系统服务以及提供数据的,所以此数据的名称定为“工资”以便记忆,而建立数据库的工具为sql server 2005,使用为VS 2008一.需求分析1.数据需求工资管理信息系统需要完成功能主要有:(1)员工基本信息的录入,修改,删除,包括员工编号,员工姓名,所属部门,性别,出生年月,身份证号,民族,政治面貌,文化程度,专业,职务,进入单位时间,基本工资,银行账号,电话号码,联系电话住址,说明(2)工资标准设定功能。
具体包括职务工资,职称工资以及其它工资标准的设定。
(3)工资信息浏览。
包括员工编号,员工姓名,实发工资(4)员工工资表创建。
数据库课程设计报告_工资管理系统

数据库课程设计报告_工资管理系统一、引言工资管理是每个企业必不可少的一个管理方面,它不仅关系到企业的资金管理,同时也关系到员工的收入与福利。
在当前信息技术不断发展的时代,各种软件系统的应用已经成为了一个企业发展的标配。
因此,我们设计了一款简单实用的工资管理系统。
二、系统的设计思路1. 系统需求分析针对使用系统人员(管理员、普通员工)的需求,我们在系统中加入了以下功能:* 员工信息的录入与修改* 员工工资信息的录入与修改* 工资发放管理* 查看历史工资记录结合上述功能点,我们为系统制定了几条关键需求:* 数据库必须可保证一致性,员工工资信息需在工资发放管理时及时更新* 管理员可查看工资信息,但无权修改工资明细* 操作流程应严谨,避免用户误操作2. 数据库表设计为了实现系统的功能,我们设计了以下表:* employee(员工信息表)* salary(员工工资明细表)* salary_record(工资记录表)employee表主要包括员工的基本信息,包括员工编号、姓名、性别、部门、岗位等。
salary表主要记录员工的工资明细信息,包括年度、月份、基本工资、绩效工资、奖金等。
salary_record表主要记录工资的发放记录,包括年度、月份、发放日期等。
3. 系统架构设计本系统采用了B/S架构,由前端页面和后台服务端组成。
前端页面采用了HTML、CSS、JavaScript等技术进行开发,后台服务端则采用了Java语言并使用了Spring框架。
4. 功能设计系统主要功能有如下几点:* 员工信息管理:管理员可对员工信息进行添加、修改、删除操作。
* 工资信息管理:管理员可对员工工资信息进行添加、修改、删除操作。
* 工资发放管理:管理员可对员工工资信息进行发放操作。
* 工资查询:工资发放后,员工和管理员可以查询员工工资记录。
三、实现技术细节1. 连接池为了防止每次创建一个新的连接造成过度资源的占用,在系统中使用了连接池技术。
工资管理系统数据库设计报告(数据库课程设计)模板.doc

工资管理系统数据库设计报告(数据库课程设计)模板数据库课程设计报告设计题目:工资管理系统学院:数学与计算机学院专业:计算机科学与技术(软件工程)班级:软件12 指导老师:李竹林组员:徐振国(02)张奇卫(03)小组成员及分工组员分工编写代码及测试运行概念设计物理结构设计需求分析需求分析需求分析需求分析目录1.引言41.1编写目的41.2项目背景41.3参考资料42.需求分析52.1功能的分析、52.2 顶层图52.3数据流程图52.4 数据字典分析63.数据库的概念设计74.数据库的逻辑设计85.数据库与数据表的设计——物理结构设计95.1数据库与数据表的设计95.2数据的完整性设计126.数据库操作与实施结果——数据库对象的设计136.1建数据库——工资管理库136.2 建表136.3创建视图166.4 触发器166.5 建立索引177.运行和维护187.1简单查询187.2复杂查询197.3数据库的用户与权限管理XXXX年月,基本工资,岗位工资,工龄工资,加班工资,缺勤扣款,其他应减款,其他应增款,应发工资,实发工资from 工资,员工where 员工.员工编号=工资.员工编号and 姓名like '张%';(3)每个部门的工资情况,按月统计select 部门名称,avg(实发工资) from 工资,员工where 员工.员工编号=工资.员工编号group by 部门名称;7.3数据库的用户与权限管理(1)数据库的用户管理GZGL库的用户dbo用户属性数据库登陆文件夹Sa登陆属性建立新用户:用户名U1,密码1234(登陆名login1)Create login login1 with password=’1234’;Use GZGL;Create user U1 for login1;(2)用户权限管理系统权限管理对象权限管理,设置权限将员工表的录入、查询授予给U1用户GRANT SELECT,INSERT ON TABLE 员工TO U1;7.4数据库的备份对GZGL库进行备份单击备份右键进行备份7.5数据的导出与导入1)数据的导出8 总结经过这段时间的努力,我们组在老师的帮助下,基本完成本次的课程设计,基本达到了工资管理系统的要求。
数据库工资管理系统课程设计报告

数据库原理及应用课程设计《工资管理系统》学生姓名:++++++学生班级:++++++++学生学号:++++++++指导老师:+++++++目录一、开发背景 (3)二、系统功能 (3)三、需求分析 (5)1、数据流图 (5)2、数据字典 (6)1.数据流的描述 (6)2、处理逻辑的描述 (7)3. 数据存储的描述 (8)四.概念结构设计 (9)(1)员工信息属性图 (9)(2)工资种类属性图 (10)(3)津贴属性图 (10)(5)局部E-R图 (11)(6)局部E-R图 (12)(7)总的E-R图 (13)五、逻辑结构设计 ..................................................................... 错误!未定义书签。
1数据库关系模式 .. (14)2规范化处理 (14)3逻辑模型 (14)1.员工信息表 (14)2.工资种类表 (15)3.津贴表 (15)4.加班表 (15)六、物理结构设计 ..................................................................... 错误!未定义书签。
七、数据库实施及应用程序编制 (16)1.创建数据库 (17)2.创建表 (17)3.创建存储过程....................................................................... 错误!未定义书签。
八、课程设计心得体会 (19)一、开发背景现代企业管理非常复杂,并且管理的范围也很广泛。
不仅要管理职工的工资发放,还要管理财务预算结算,银行之间的转账等。
手工管理这些信息几乎不再可能,并且效率低,保密性差。
用计算机管理的优点是查询速度快,保密性好一集成本低。
因此开发专用的工资管理系统,让计算机自动管理工资势在必行。
随着经济的发展,企业正向着大型化、规模化发展,而对于大中型企业,员工、职称等跟工资管理有关的信息随之急剧增加。
数据库设计报告——工资管理系统

数据库设计报告——工资管理系统工资管理系统是一个用于管理公司员工工资信息的数据库系统。
该系统旨在提高工资管理的效率和准确性,减少人工管理过程中的错误和延误。
本数据库设计报告将详细介绍工资管理系统的数据库设计方案。
一、需求分析在进行数据库设计之前,首先需要进行详细的需求分析。
根据用户需求,工资管理系统应具备以下功能:1.员工信息管理:包括员工基本信息、职位、部门等。
2.薪资信息管理:包括员工工资、奖金、津贴等。
3.薪资计算:根据员工基本信息和薪资信息,计算每个员工的实际工资。
4.工资发放:记录每次工资发放的日期、金额等信息。
5.统计分析:能够对员工的薪资进行统计分析,如最高工资、最低工资、平均工资等。
二、数据库设计2.1实体分析根据需求分析,确定了以下实体:员工、部门、岗位、薪资、薪资发放记录。
2.2属性分析具体的实体和属性设计如下:员工(Employee):- 员工编号(EmployeeID):主键,自动生成。
- 姓名(Name)- 性别(Gender)- 出生日期(Birthday)- 手机号码(Phone)- 部门编号(DepartmentID):外键,关联部门表。
部门(Department):- 部门编号(DepartmentID):主键,自动生成。
- 部门名称(DepartmentName)岗位(Position):- 岗位编号(PositionID):主键,自动生成。
- 岗位名称(PositionName)薪资(Salary):- 薪资编号(SalaryID):主键,自动生成。
- 员工编号(EmployeeID):外键,关联员工表。
- 岗位编号(PositionID):外键,关联岗位表。
- 基本工资(BasicSalary)- 奖金(Bonus)- 津贴(Allowance)薪资发放记录(Payment):- 记录编号(RecordID):主键,自动生成。
- 员工编号(EmployeeID):外键,关联员工表。
工资管理系统数据库课设报告(附C#代码)

数据库原理课程设计方案设计设计题目:工资管理系统专业班级学生学号指导教师完成日期2014/6/23-2014/6/262014 年春季学期设计任务3、工资管理系统建库:1个----工资管理数据库。
建表:3个----档案表、工资总表、工资变动表。
编程:5个----输入、修改、查询、计算、输出等五个子系统。
要求:(1)每组3个人,每人完成一个子系统,每人都要建立库及全部表;(2)每人写出各自的课程设计报告;(3)程序用选定的语言编写,且上交上机调试通过的源程序。
评语(教师填写)目录⒈系统规划 (7)1.1 任务分配 (7)1.2 可行性分析 (7)1.2.1 运行可行性 (7)1.2.2 技术可行性 (7)1.3 划分子系统 (8)1.4 制定信息系统开发方案及日程安排 (8)1.4.1 对各子系统的评价 (8)1.4.2 信息系统资源分配计划 (8)⒉系统分析 (9)2.1 需求确定 (9)2.1.1概念模型 E—R图 (9)2.2 需求分析 (11)2.2.1系统需求分析 (11)2.2.2 数据库表 (12)⒊系统设计 (13)3.1数据库表设计 (13)3.2 代码设计 (14)⒋系统实施 (38)4.1 程序设计说明书 (38)4.2 用户手册 (38)5. 写出收获和体会(重点) (39)5.1 已解决和尚未解决的问题 (39)5.2 进一步完善的设想与建议 (40)6. 参考文献 (40)⒈系统规划1.1 任务分配组长:***组员:*** ***任务分配:***:建立用户登录界面,员工信息录入,做最后完善工作。
***:负责员工信息子系统和修改子系统,实验报告的编写。
***:负责数据库的建立和计算子系统,显示子系统,配合编写实验报告。
1.2 可行性分析1.2.1 运行可行性随着计算机技术的飞速发展,计算机在企业管理中的应用越来越普及,利用计算机实现企业工资的管理显得越来越重要。
对于大中型企业来说,利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件;而工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行工资发放工作,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,同时计算机具有手工管理所无法比拟的优点. 例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
数据库课程设计报告工资管理系统设计说明

数据库课程设计报告工资管理系统组员:廖翔,小芳,强江波,晶晶,兆强,夏冲组长:小芳需求分析员:晶晶程序员:廖翔,小芳,强将波测试员:兆强界面设计员:夏冲目录一绪论 (3)二课程设计说明 (3)三需求分析 (4)四物理结结构设计 (5)五数据字典 (5)六数据库设计 (10)七功能实现截图 (11)八,小结 (21)附录1.(组员及学号)廖翔(),小芳(),兆强(),晶晶(),夏冲(),强将波()2.开发环境说明使用C#进行客户端应用程序的开发,数据库管理系统采用SQL SERVER一、绪论随着计算机技术的飞速发展和经济体制改革的不断深入,传统企业管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成员工工资管理工作。
提高公司企业管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。
基于C#与SQL server数据库技术建立一个通用工资管理系统,该系统为提供了查询、增加记录、删除等功能,功能比较的齐全,并对工资进行了统计如津贴管理、报表统计等。
基本上能满足管理员和公司的要求。
此次数据库课程设计的主要设计如下:原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。
需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。
二.课程设计说明1.设计题目:工资管理系统2.设计任务与要求:2.1实验任务1. 掌握数据库设计和实现的基本过程2. 掌握数据库模式设计、分析和实现的方法3. 了解数据库应用系统软件开发的一般过程。
2.2 实验基本要求(1)学习相关的预备知识(2)按照数据库设计与实现过程完成数据库的设计,应用程序的开发,上机调试、运行(3)写出课程设计报3. 目的本说明书目的在于明确说明系统需求,界定系统实现功能的围,指导系统设计以及编码。
本文档作为人力资源管理系统的需求说明文档,用于与用户确定最终的目标,并成为协议文本的一部分,同时也是本系统设计人员的基础文档。
数据库原理课程设计报告-工资管理系统

重庆科技学院课程设计报告院(系):_电气与信息工程学院专业班级:计科1203学生姓名:赵弈胰学号: 2012442084 设计地点(单位)______I308_ _______ _ _设计题目:__ _工资管理系统设计完成日期: 2016年 1月 7日指导教师评语:__________________________________________________________________________________________________________________________________________________________________________________________成绩(五级记分制):______ __________指导教师(签字): ________ ________摘要本次数据库课程设计不要求界面和外部应用程序的设计,只设计数据库部分。
工资管理系统采用mysql作为数据库后台。
工资管理系统的主要任务是用计算机对各种工资信息进行日常的管理,如查询、修改、增加、删除等,设计触发器、存储过程使管理更方便,迅速准确地完成各种工资信息的统计计算和汇总工作,快速打印出工资报表,针对系统服务对象的具体要求,设计了企业工资管理系统。
关键词:工资管理系统msyql 触发器存储过程重庆科技学院课程设计任务书3 设计题目:工资管理系统设计学生姓名赵弈胰课程名称数据库原理及应用课程设计专业班级物联网2014-01 物联网2014-02地点I308 起止时间2015.1.4-2015.1.8设计内容及要求内容:学生根据本课程设计指导书中的题目,进行设计。
为了保证系统具有高度的安全性,要有登录界面,进行用户身份的验证。
用户分为不同的级别,例如管理员级用户和普通用户。
员工不同工种基本工资的设定:员工工种的不同,工资的标准也不同,允许管理员根据员工的现任职务设定员工的基本工资。
数据库课程设计实验报告-工资管理系统

延安大学计算机学院实验报告专用纸实验室: 软件工程实验室学号: 实验日期: 2013年11月日第页, 共页(1).需求分析工资管理信息系统对企业加强工资管理有着极其重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等等.在做这个管理系统时,我们既咨询了父母又结合了教师等不同行业人士的工资情况,发现该系统受些许因素牵制比如说:公司大小,人员流动性,员工学历等通过我们的了解调查最终总结出系统功能如下:a. 整体结构合理, 模块化结构利于操作.b. 完整的数据输入,输出,维护.c. 拥有不错的自检性,用户输错或误输均有提示.d. 拥有较强的容错性,某个用户的错误操作不会引起系统的瘫痪.e. 程序接口灵活,以便日后操作与维护.f. 在不影响系统功能的前提下,美化操作界面.(2).概念设计○1E-R图○2数据流图(3).逻辑设计基本信息(员工编号号,姓名,性别,毕业学校,所学专业,学历,电话,住址,从事岗位).考勤信息表(员工编号,姓名,请假天数,矿工天数,月迟到次数,月份).加班信息表(员工编号,姓名,晚班加班(天),周末加班(天),春节加班(天),节假日加班(天),月份).岗位信息表(员工编号,姓名,从事岗位,基本工资,部门名称).部门信息表(部门编号,部门名称,部门经理,部门人数)根据基本表创建了如下视图:加班津贴(员工编号,姓名,加班薪酬,月份)缺勤扣除表(员工编号,姓名,扣除工资,月份)月工资表(员工编号,姓名,基本工资,扣除工资,加班薪酬,实得工资,月份)年终奖(员工编号,姓名,奖(4).数据字典列名(EngliSh) 列名数据类型是否空值备注Empno 员工编号int NOT NULL ForeignkeyLeavedays 请假天数int NULLTruancydays 旷工天数int NULLLatetimes 月迟到次数(t) int NULLThemonth月份int NOT NULL视图的创建:(5).系统的实现开发环境:SQL server 2005及eclipse ○1用SQL 语言创建数据库 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.部门信息表(BMXX) Create table BMXX(Deptno int not null primary key,Dept varchar(16) not null,Manager varchar(8) null,Empnum int null)1).加班津贴表(JBJT)Create view JBJT(Empno, Emname, Overtimesalary,Themonth)Asselect JBXX.Empno,JBXX.Emname,night*70+weekend*80+festival*140+special*210, Themonthfrom OVERTIMEINFORMATION,JBXXwhere OVERTIMEINFORMATION.Empno =JBXX.Empno2).缺勤扣除表(QQKC)Create view QQKC(Empno, Emname, Deductions, Themonth)Asselect JBXX.Empno, JBXX.Emname, Truancydays *80+Leavedays*40+Latetimes*10, Themonthfrom KQXX, JBXXwhere JBXX.Empno=KQXX.Empno3).月工资表(SALARY)Create view SALARY2(Empno, Emname, Salary, Deductions, Overtimesalary ,Gainsalary,Themonth)Asselect distinct JBXX.Empno, JBXX.Emname, GWXX .Salary, Deductions,Overtimesalary, GWXX .Salary+ Overtimesalary- Deductions , QQKC.Themonthfrom KQXX,GWXX,QQKC,JBJT,JBXX,OVERTIMEINFORMATIONwhere QQKC.Empno= JBJT.Empno and GWXX .Empno= JBXX.Empno and OVERTIMEINFORMA TION.Empno=QQKC.Empno andQQKC.Empno=JBXX.Empno and KQXX. Themonth=OVERTIMEINFORMA TION. Themonthand JBXX.Empno=KQXX.Empno and QQKC.Emname=JBJT.Emname and JBJT.Emname=JBXX.Emname 4).年终奖(NZJJ)Create view NZJJ(Empno,Emname,jiangjin) AsSelect JBXX.Empno,JBXX.Emname,(sum(SALARY.Gainsalary)+sum(SALARY.Overtimesalary))/12From KQXX ,JBJT,JBXX,SALARY,OVERTIMEINFORMATIONGroup by JBXX.Empno,JBXX.Emname,SALARY. Empnohaving JBXX.Empno= SALARY. Empno and JBXX.Empno =SALARY. Empno○2在eclipse中连接SQL server数据库○3编写界面设计的代码○4运行系统与检验,调试系统四.实验数据与程序清单Connection连接代码import java.sql.*;public class connection {public static void main(String[] srg) {String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动 String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)"; //连接服务器和数据库sampleString user = "sa"; //默认用户名String pass = "7757xiong"; //密码Connection Con = null;try {Class.forName(driverName);Con = DriverManager.getConnection(dbURL, user, pass);System.out.println("数据库连接成功!"); } catch (Exception e) {System.out.println("数据库连接失败!");e.printStackTrace();} finally{try {Con.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();} } } }○1系统进入欢迎界面import java.awt.*;import java.awt.event.*;import javax.swing.*;class DB extends JFrame implements ActionListener {JFrame frame = new JFrame("欢迎进入企业工资管理系统");JLabel label = new JLabel("", JLabel.CENTER);JButton button1 = new JButton("进入系统");JButton button2 = new JButton("退出系统");ImageIcon im = new ImageIcon("1.jpg");JLabel a1 = new JLabel(im);void Create() {JPanel pcontentPane = (JPanel) frame.getContentPane();pcontentPane.add(a1);pcontentPane.add(label);pcontentPane.setLayout(new FlowLayout());pcontentPane.add(button1);pcontentPane.add(button2);pcontentPane.setVisible(true);button1.addActionListener(this);button2.addActionListener(this);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setBounds(200, 100, 550, 230);frame.setVisible(true);}public static void main(String[] args) {DB dome = new DB();dome.Create();}public void actionPerformed(ActionEvent e) {if (button1.equals(e.getSource())) {用户登录dl = new 用户登录();dl.create();frame.dispose();} if (button2.equals(e.getSource())) {// 退出System.exit(0);}}}○2登陆界面import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;/*-----------------------------------------用户与管理员登录----------------------------------------*/ class 用户登录extends JFrame implements ActionListener{ImageIcon im = new ImageIcon("2.jpg");JLabel a2 = new JLabel(im);JFrame frame = new JFrame("职工/管理员登陆");JLabel label1 = new JLabel("用户名");JLabel label2 = new JLabel("密码");JButton logonButton1 = new JButton("管理员登录");JButton logonButton2 = new JButton("职工登录");JButton cancelButton = new JButton("退出");JTextField username = new JTextField(9);JPasswordField password = new JPasswordField(9);static String t1;static String t2;void create() {JPanel p = (JPanel) frame.getContentPane();JPanel p1 = new JPanel();p.setLayout(new FlowLayout());p.add(a2);p.add(label1);p.setSize(5, 5);p.setLocation(4, 8);p.add(username);p.setSize(100, 200);p.setLocation(800, 800);p.add(label2);p.setSize(50, 20);p.setLocation(40, 80);p.add(password);p.setSize(100, 20);p.setLocation(80, 120);p.add(logonButton1);p.add(logonButton2);p.add(cancelButton);p.setBackground(Color.yellow);p.setVisible(true);logonButton1.addActionListener(this);logonButton2.addActionListener(this);cancelButton.addActionListener(this);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setBounds(200, 100, 500, 260);frame.setVisible(true);}public void actionPerformed(ActionEvent e){t1 = username.getText();t2 = password.getText();if(e.getSource()==logonButton1){if( username.getText().equals("admin") == true&& (password.getText().equals("admin") == true)) {JOptionPane.showMessageDialog(this, "登录成功!");GZGLZJM gz = new GZGLZJM();gz.create();frame.dispose();}else {JOptionPane.showMessageDialog(null, "输入用户名或密码错误!");}} if (e.getSource()==logonButton2){try {Connection con;Statement ps;ResultSet rs;String sql = null;Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql="select * from logininformation where Empno='"+t1+"' and password='"+t2+"'";Statement sta = con.createStatement();rs=sta.executeQuery(sql);if(rs.next()){if(rs.getString("Empno").equals(t1) && rs.getString("password").equals(t2)){YGDLJM yg = new YGDLJM();yg.create();frame.dispose();JOptionPane.showMessageDialog(this, "登录成功!");this.dispose();}}else {JOptionPane.showMessageDialog(this, "输入用户名或密码错误!");}}catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();} } if (cancelButton.equals(e.getSource())) // 退出{System.exit(0);○3管理员可管理选项import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;class 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("3.jpg");JLabel a1 = new JLabel(im);void create() {JPanel p = (JPanel) f.getContentPane();p.setLayout(new FlowLayout());p.add(a1);p.add(b1);p.add(b2);p.add(b3);p.setBackground(Color.yellow);p.setVisible(true);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);f.setBounds(200, 100, 500, 200);f.setVisible(true);} public void actionPerformed(ActionEvent e) {if (b3.equals(e.getSource())) {// 返回用户登录d = new 用户登录();d.create();f.dispose();} if (b2.equals(e.getSource())) {// 员工信息管理YGGL yg = new YGGL();yg.create();f.dispose();} if (b1.equals(e.getSource())) {// 工资管理GZGL gz = new GZGL();gz.create();f.dispose(); } }}○4员工基本信息管理import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTable;import javax.swing.JTextField;public 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(4);JTextField tf6 = new JTextField(4);JTextField tf7 = new JTextField(4);JTextField tf8 = new JTextField(4);JTextField tf9 = new JTextField(4);JTextField tf10 = new JTextField(4);JTextField tf11 = new JTextField(4);JTextField tf12 = new JTextField(4);JTextField tf13 = new JTextField(4);JTextField tf14 = new JTextField(4);String[] cloum = { "编号", "姓名", "性别", "学校","专业","学历","电话","住址","岗位","基本工资","部门","密码"};Object[][] row = new Object[50][12];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table);JSplitPane splitpane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);void create() {JPanel p = (JPanel) f.getContentPane();p.setLayout(new FlowLayout());p.add(scrollpane);p.add(splitpane);JPanel p1 = new JPanel();p1.add(b1);p1.add(b2);p1.add(b3);p1.add(b4);p1.add(b5);JPanel p2 = new JPanel();p2.setBackground(Color.yellow);p2.add(scrollpane);p.setLayout(new FlowLayout());p.add(new JLabel(""));p.add(new JLabel("编号"));p.add(tf1);p.add(new JLabel("姓名"));p.add(tf2);p.add(new JLabel("性别"));p.add(tf3);p.add(new JLabel("毕业学校"));p.add(tf4);p.add(new JLabel("所学专业"));p.add(tf5);p.add(new JLabel("学历"));p.add(tf6);p.add(new JLabel("电话"));p.add(tf7);p.add(new JLabel("住址"));p.add(tf8);p.add(new JLabel("岗位"));p.add(tf9);p.add(new JLabel("基本工资"));p.add(tf10);p.add(new JLabel("部门名称"));p.add(tf11);p.add(new JLabel("登录密码"));p.add(tf12);p.add(new JLabel("权限"));p.add(tf13);p.add(new JLabel("输入员工编号点击查询/删除"));p.add(tf14);//splitpane.add(p1, splitpane.TOP);splitpane.add(p1, splitpane.TOP);splitpane.add(p2, splitpane.BOTTOM);splitpane.setDividerLocation(50);p.setBackground(Color.GREEN);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);f.setBounds(200, 100, 530, 630);f.setResizable(true);// 可以调整界面大小f.setVisible(true);}public void actionPerformed(ActionEvent e) {/*------------------------- 添加新员工信息------------------------------*/if (b1.equals(e.getSource())) {Connection con;Statement sql;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement();String insertStr = "INSERT INTO JBXX (Empno,Emname,Sex,School,Profession,Education,Phone,Address)V ALUES('"+tf1.getText()+"','"+tf2.getText( )+"'," +"'"+tf3.getText()+"','"+tf4.getText()+"','"+tf5.getText()+"','"+tf6.getText()+"','"+tf7.getText()+"','"+tf8.getTe xt()+"');";sql.executeUpdate(insertStr);String insertStr1 = "INSERT INTO GWXX (Empno,Job,Salary,Dept)V ALUES('"+tf1.getText()+"','"+tf9.getText()+"','"+tf10.getText()+"','"+tf11.getText()+ "');";sql.executeUpdate(insertStr1);String insertStr2 = "INSERT INTO logininformation (Empno,password,Thegrant)V ALUES('"+tf1.getText()+"','"+tf12.getText()+"','"+tf13.getText()+"');";sql.executeUpdate(insertStr2);JOptionPane.showMessageDialog(this, "添加成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "添加失败!");} }if (b2.equals(e.getSource())) {/*------------------------- 修改员工信息-------------------------------*/ Connection con;Statement sql;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");} try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement();String updateStr = "UPDATE JBXX SET Sex='"+tf3.getText()+"',Emname='"+tf2.getText()+"',School='"+tf4.getText()+"',Profession='"+tf5.getText()+"'," +"Education='"+tf6.getText()+"',Phone='"+tf7.getText()+"',Address='"+tf8.getText()+"'whereEmpno='"+tf1.getText()+"';";sql.executeUpdate(updateStr);String updateStr1 = "UPDATE GWXX SET Salary='"+tf10.getText()+"',Dept='"+tf11.getText()+"',Job='"+tf9.getText()+"'whereEmpno='"+tf1.getText()+"';";sql.executeUpdate(updateStr1);String updateStr2 = "UPDATE logininformation SET password='"+tf12.getText()+"',Thegrant='"+tf13.getText()+"'where Empno='"+tf1.getText()+"';";sql.executeUpdate(updateStr2);JOptionPane.showMessageDialog(this, "修改成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "修改失败!");} }if (b3.equals(e.getSource())) {/*---------------------------- 删除员工信息-------------------------------*/ Connection con;Statement sql;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONL Y);sql.executeUpdate("DELETE FROM JBXX where Empno='"+tf14.getText()+"';");sql.executeUpdate("DELETE FROM GWXX where Empno='"+tf14.getText()+"';");sql.executeUpdate("DELETE FROM logininformation where Empno='"+tf14.getText()+"';");JOptionPane.showMessageDialog(this, "删除成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "删除失败!");} }if (b4.equals(e.getSource())) {/*------------------------------------- 查询全部员工信息--------------------------------------------*/Connection con;Statement sql;ResultSet rs;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");} try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONL Y);if (b4.equals(e.getSource())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 12; j++)table.setValueAt("", i, j);rs = sql.executeQuery("select distinct JBXX.Empno,Emname,Sex,School,Profession,Education,Phone,Address,Job,Salary,Dept,logininformation.pass word from JBXX,GWXX,logininformation where JBXX.Empno=GWXX.Empno and JBXX.Empno=logininformation.Empno;");int k = -1;while (rs.next()) {++k;String Empno = rs.getString("Empno");String Emname = rs.getString("Emname");String Sex= rs.getString("Sex");String School= rs.getString("School");String Profession= rs.getString("Profession");String Education= rs.getString("Education");String Phone= rs.getString("Phone");String Address= rs.getString("Address");String Job = rs.getString("Job");String Salary= rs.getString("Salary");String Dept= rs.getString("Dept");String password = rs.getString("password");table.setValueAt(Empno, k, 0);table.setValueAt(Emname, k, 1);table.setValueAt(Sex, k, 2);table.setValueAt(School, k, 3);table.setValueAt(Profession, k, 4);table.setValueAt(Education,k,5);table.setValueAt(Phone, k, 6);table.setValueAt(Address, k, 7);table.setValueAt(Job, k, 8);table.setValueAt(Salary, k, 9);table.setValueAt(Dept, k, 10);table.setValueAt(password, k, 11);} } } catch (SQLException e1) { JOptionPane.showMessageDialog(this, "查询失败!");} } if (b5.equals(e.getSource())) {// 返回GZGLZJM gl=new GZGLZJM();gl.create();f.dispose();} }}○5考勤及加班信息管理import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTable;import javax.swing.JTextField;public 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(4);JTextField tf6 = new JTextField(4);JTextField tf7 = new JTextField(4);JTextField tf8 = new JTextField(4);JTextField tf9 = new JTextField(4);JTextField tf10 = new JTextField(4);String[] cloum = { "员工编号", "请假天数", "旷工天数", "迟到次数","晚班天数","周末加班","节日加班","春节加班","月份"};Object[][] row = new Object[50][9];JTable table = new JTable(row, cloum);JScrollPane scrollpane = new JScrollPane(table);JSplitPane splitpane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);void create() {JPanel p = (JPanel) f.getContentPane();p.setLayout(new FlowLayout());p.add(scrollpane);p.add(splitpane);JPanel p1 = new JPanel();p1.add(b1);p1.add(b2);p1.add(b3);p1.add(b4);p1.add(b5);JPanel p2 = new JPanel();p2.setBackground(Color.yellow);p2.add(scrollpane);p.setLayout(new FlowLayout());p.add(new JLabel(""));p.add(new JLabel("员工编号"));p.add(tf1);p.add(new JLabel("请假天数"));p.add(tf2);p.add(new JLabel("旷工天数"));p.add(tf3);p.add(new JLabel("迟到次数"));p.add(tf4);p.add(new JLabel("晚班天数"));p.add(tf5);p.add(new JLabel("周末加班"));p.add(tf6);p.add(new JLabel("节日加班"));p.add(tf7);p.add(new JLabel("春节加班"));p.add(tf8);p.add(new JLabel("月份"));p.add(tf9);p.add(new JLabel("输编号点查询/删除"));p.add(tf10);splitpane.add(p1, splitpane.TOP);splitpane.add(p2, splitpane.BOTTOM);splitpane.setDividerLocation(50);p.setBackground(Color.GREEN);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);f.setBounds(200, 100, 550,630);f.setResizable(true);// 可以调整界面大小f.setVisible(true);} public void actionPerformed(ActionEvent e) {/*------------------------- 添加员工考勤与加班信息------------------------------*/if (b1.equals(e.getSource())) {Connection con;Statement sql;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");} try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement();String insertStr = "INSERT INTO KQXX (Empno,Leavedays,Truancydays,Latetimes,Themonth)V ALUES('"+tf1.getText()+"','"+tf2.getText()+"'," +"'"+tf3.getText()+"','"+tf4.getText()+"','"+tf9.getText()+"');";sql.executeUpdate(insertStr);String insertStr1 = "INSERT INTO OVERTIMEINFORMATION (Empno,Night,Weekend,Festival,Special,Themonth)V ALUES('"+tf1.getText()+"'," +"'"+tf5.getText()+"','"+tf6.getText()+"','"+tf7.getText()+"','"+tf8.getText()+"','"+tf9.getText()+"');";sql.executeUpdate(insertStr1);JOptionPane.showMessageDialog(this, "添加成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "添加失败!");}}if (b2.equals(e.getSource())) {/*------------------------- 修改员工信息-------------------------------*/ Connection con;Statement sql;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");} try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement();String updateStr = "UPDATE KQXX SET Leavedays='"+tf2.getText()+"',Truancydays='"+tf3.getText()+"',Latetimes='"+tf4.getText()+"',Themonth='"+tf9. getText()+"'where Empno='"+tf1.getText()+"';";sql.executeUpdate(updateStr);String updateStr1 = "UPDA TE OVERTIMEINFORMATION SET ,Night='"+tf5.getText()+"'," +"Weekend='"+tf6.getText()+"',Festival='"+tf7.getText()+"',Special='"+tf8.getText()+"',Themonth='"+tf9.ge tText()+"'where Empno='"+tf1.getText()+"';";sql.executeUpdate(updateStr1);JOptionPane.showMessageDialog(this, "修改成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "修改失败!"); } } if (b3.equals(e.getSource())) {/*---------------------------- 删除员工信息-------------------------------*/ Connection con;Statement sql;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");}try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONL Y);sql.executeUpdate("DELETE FROM KQXX where Empno='"+tf10.getText()+"';");sql.executeUpdate("DELETE FROM OVERTIMEINFORMA TION where Empno='"+tf10.getText()+"';");JOptionPane.showMessageDialog(this, "删除成功!");con.close();} catch (SQLException e1) {JOptionPane.showMessageDialog(this, "删除失败!");} }if (b4.equals(e.getSource())) {/*------------------------------------- 查询全部员工信息--------------------------------------------*/Connection con;Statement sql;ResultSet rs;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e1) {JOptionPane.showMessageDialog(this, "连接数据库失败!");} try {String url="jdbc:sqlserver://localhost:1433; DatabaseName=工资管理系统(1)";String user="sa";String pass="7757xiong";con=DriverManager.getConnection(url,user,pass);sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONL Y);if (b4.equals(e.getSource())) {for (int i = 0; i < 50; i++)for (int j = 0; j < 9; j++)table.setValueAt("", i, j);。
数据库课程设计报告之工资管理系统

数据库课程设计报告和设计实例知识重点:数据库课程设计报告和设计实例 sql数据库课程设计数据库课程设计实例vid 自动编号 username 用户(varchar) filepath 文件路径(varchar) filename 文件名(varchar) addtime 时间(smalldatetim..数据库课程设计报告和设计实例计vid 自动编号username 用户(varchar)filepath 文件路径(varchar)filename 文件名(varchar)addtime 时间(smalldatetime)当然,可以把文件路径和文件名合并,不合并更通用的,便于以后扩展sql数据库课程设计报告表1-1 ×××序号名称属性数量1-1-1 ** ** 11-1-2 ** ** 11-1-3 ** ** 1表1-2 ×××序号名称属性数量1-2-1 ** ** 11-2-2 ** ** 11-2-3 ** ** 1表2-1 ×××序号名称属性数量2-1-1 ** ** 12-1-2 ** ** 12-1-3 ** ** 1表2-2 ×××序号名称属性数量2-2-1 ** ** 12-2-2 ** ** 12-2-3 ** ** 1这四个表我能设计成两个表么???还是一个表一个table自动编号序号名称1 1-1 ×××2 1-2 ×××3 2-1 ×××4 2-2 ×××自动编号序号名称属性数量1 1 ** ** 12 1 ** ** 13 1 ** ** 14 2 ** ** 15 2 ** ** 16 2 ** ** 17 3 ** ** 18 3 ** ** 19 3 ** ** 110 4 ** ** 111 4 ** ** 112 4 ** ** 1数据库课程设计报告之工资管理系统1.引言1. 1题目简介我们将设计一个应用于企业的工资管理系统。
工资管理系统数据库设计报告(数据库课程设计汇本)模板

据库课程设计报告设计题目:工资管理系统学院:数学与计算机学院专业:计算机科学与技术(软件工程)班级:软件12指导老师:竹林组员:徐振国(02)奇卫(03)小组成员及分工目录1.引言.................................................................... 4 .....1.1编写目的 (4)1.2项目背景 (4)1.3 参考资料 (5)2.需求分析................................................................ 5 .....2.1功能的分析、 (5)2.2 顶层图 (6)2.3数据流程图 (6)2.4 数据字典分析 (6)3. .................................................................................................................................................................. 数据库的概念设计..................................................................... 8 .....4. .................................................................................................................................................................. 数据库的逻辑设计..................................................................... 9 .....5. .................................................................................................................................................................. 数据库与数据表的设计——物理结构设计................................................. 9 ...5.1 数据库与数据表的设计 (9)5.2 数据的完整性设计 ..................................................... 1..2 ......6. .................................................................................................................................................................. 数据库操作与实施结果——数据库对象的设计............................................. 1.3...6.1 建数据库——工资管理库 ............................................... 1..3 ......6.2 建表 ................................................................. 1..3 ......... 6.3 创建视图 ............................................................. 1..6 ......... 6.4 触发器 ............................................................... 1..6 ......... 6.5 建立索引 ............................................................. 1..8 .........7. .................................................................................................................................................................. 运行和维护............................................................................ 1..87.1 简单查询............................................................. 1..8 ......... 7.2 复杂查询 ............................................................. 1..9 ......... 7.3 数据库的用户与权限管理 ............................................... 2..0 ......7.4 数据库的备份 ......................................................... 2..2 .........7.5 数据的导出与导入 ..................................................... 2..3 ......8 总结...................................................................... 2.4 ..工资管理系统分析和设计1.引言1.1编写目的随着科学的进步,一些公司不断发展壮大急需一套完整的工资管理系统帮助企业的财务主管部门提高工作效率,实现企业工资管理的系统化、规化和自动化。
数据库课程设计工资管理系统

数据库课程设计报告工资管理系统组员:廖翔,刘小芳,强江波,张晶晶,冯兆强,夏冲组长:刘小芳需求分析员:张晶晶程序员:廖翔,刘小芳,强将波测试员:冯兆强界面设计员:夏冲目录一绪论 (3)二课程设计说明 (3)三需求分析 (4)四物理结结构设计 (5)五数据字典 (5)六数据库设计 (10)七功能实现截图 (11)八,小结 (21)附录1。
(组员及学号)廖翔(),刘小芳(41009040127),冯兆强(),张晶晶(41009040130),夏冲(),强将波()2.开发环境说明使用C#进行客户端应用程序的开发,数据库管理系统采用SQL SERVER一、绪论随着计算机技术的飞速发展和经济体制改革的不断深入,传统企业管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成员工工资管理工作。
提高公司企业管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识.基于 C#与SQL server 数据库技术建立一个通用工资管理系统,该系统为提供了查询、增加记录、删除等功能,功能比较的齐全,并对工资进行了统计如津贴管理、报表统计等。
基本上能满足管理员和公司的要求。
此次数据库课程设计的主要设计如下:原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。
需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。
二.课程设计说明1。
设计题目:工资管理系统2。
设计任务与要求:2.1实验任务1。
掌握数据库设计和实现的基本过程2。
掌握数据库模式设计、分析和实现的方法3. 了解数据库应用系统软件开发的一般过程.2.2 实验基本要求(1)学习相关的预备知识(2)按照数据库设计与实现过程完成数据库的设计,应用程序的开发,上机调试、运行(3)写出课程设计报3. 目的本说明书目的在于明确说明系统需求,界定系统实现功能的范围,指导系统设计以及编码。
本文档作为人力资源管理系统的需求说明文档,用于与用户确定最终的目标,并成为协议文本的一部分,同时也是本系统设计人员的基础文档。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数
据
库
课
程
设
计
报
告
设计题目:工资管理系统
学院:数学与计算机学院
专业:计算机科学与技术(软件工程)班级:软件12
指导老师:竹林
组员:徐振国(02)奇卫(03)
小组成员及分工
目录
1.引言 (4)
1.1编写目的 (4)
1.2项目背景 (4)
1.3参考资料 (5)
2.需求分析 (5)
2.1功能的分析、 (5)
2.2顶层图 (6)
2.3数据流程图 (6)
2.4数据字典分析 (6)
3.数据库的概念设计 (8)
4.数据库的逻辑设计 (9)
5.数据库与数据表的设计——物理结构设计 (9)
5.1数据库与数据表的设计 (9)
5.2数据的完整性设计 (12)
6.数据库操作与实施结果——数据库对象的设计 (13)
6.1建数据库——工资管理库 (13)
6.2建表 (13)
6.3创建视图 (16)
6.4触发器 (16)
6.5建立索引 (18)
7.运行和维护 (18)
7.1简单查询 (18)
7.2复杂查询 (19)
7.3数据库的用户与权限管理 (20)
7.4数据库的备份 (22)
7.5数据的导出与导入 (23)
8 总结 (24)
工资管理系统分析和设计
1.引言
1.1编写目的
随着科学的进步,一些公司不断发展壮大急需一套完整的工资管理系统帮助企业的财务主管部门提高工作效率,实现企业工资管理的系统化、规化和自动化。
本系统实现对人员信息、薪资福利、员工社保信息的维护和查询,并能迅速准确地完成考勤的分类汇总,生成工资报表等。
能够使单位实现工资管理的自动化,无疑将给企业管理部门带来很大的方便。
真正实现企业高效、科学、现代化的员工管理。
有利于财务部门对员工工资的管理,减轻人事部们的任务,提高公司效率,节约人力资源从而降低了企业成本。
1.2项目背景
a.我们对数据库技术有了初步的了解和具体的应用;因此,做此分析,由各小
组成员合作做出一个项目。
让我们对学到的知识系统的结合在一起;考察学生学以致用的能力。
b.由此考察学生的动手能力和合作的精神;以打分的形式作为一次考察记录。
1.3参考资料
a.老师发放的软件工程文档模板。
b.网络下载有关的资料说明和一些部门的工资管理系统例。
2.需求分析
2.1功能的分析、
工资管理系统主要完成的功能有:
(1) 人员信息管理:企业员工信息(包括员工基本信息、教育经历、个人简
历、岗位变更、离职登记、离退休信息等)的维护和查询。
(2) 考勤管理:管理员工的出勤情况(包括加班、请假、休假等),并提供查
询和分类统计功能。
(3) 薪资福利管理:管理员工的薪资和福利(包括当月工资、个人所得税、
发放工资历史、员工奖励、员工惩罚等)。
(4) 社会保障管理:管理员工的社保信息(包括单位参保信息、养老保险、
医疗保险、住房公积金等),生成社会保险台帐。
(5) 系统管理:包括代码管理、参数设置、权限设置、更改密码等。
2.2 顶层图
2.3数据流程图
2.4 数据字典分析
数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数数据分析所获得的主要成果。
工资管理系统
员工
系统管理员
工资查询
注册登记
信息维护
打印报表。