数据库原理课程工资管理系统.docx

上传人:b****6 文档编号:3396831 上传时间:2022-11-22 格式:DOCX 页数:28 大小:140.07KB
下载 相关 举报
数据库原理课程工资管理系统.docx_第1页
第1页 / 共28页
数据库原理课程工资管理系统.docx_第2页
第2页 / 共28页
数据库原理课程工资管理系统.docx_第3页
第3页 / 共28页
数据库原理课程工资管理系统.docx_第4页
第4页 / 共28页
数据库原理课程工资管理系统.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

数据库原理课程工资管理系统.docx

《数据库原理课程工资管理系统.docx》由会员分享,可在线阅读,更多相关《数据库原理课程工资管理系统.docx(28页珍藏版)》请在冰豆网上搜索。

数据库原理课程工资管理系统.docx

数据库原理课程工资管理系统

重庆科技学院

 

课程设计报告

院(系):

_数理学院_专业班级:

数学与应用数学10-01

设计地点(单位)______第一实验楼___________

设计题目:

________工资管理系统_______________

完成日期:

2013年7月10日

指导教师评语:

____________________________________

______________________________________________________________________________________________________________________________________________________

 

成绩(五级记分制):

________________

指导教师(签字):

________________

重庆科技学院

课程设计任务书

设计题目:

工资管理系统设计

学生姓名

课程名称

数据库原理课程设计

专业班级

应数2010-01

地点

I306和计算机自主学习中心

起止时间

2013.7.8-2013.7.12

设计内容及要求

内容:

学生根据本课程设计指导书中的题目,进行设计。

员工不同工种基本工资的设定:

员工工种的不同,工资的标准也不同,允许管理员根据员工的现任职务设定员工的基本工资。

包括每个员工的姓名、性别、年龄、工龄、职务及其所在的部门等资料的录入来确定员工的基本工资,以及对现有工作人的基本信息的录入工作。

可以对员工的工资项目进行初始化的设置(包括住房补贴、津贴、工会会费、水电费、住房公积金、养老保险、奖惩、总工资、所得税、职务等)

加班津贴的管理,根据加班的时间和类别给予不同的加班津贴。

根据月工资生成公式,按照员工的考勤情况和工作表现,生成员工工资。

人员查询操作包括按单个员工信息查询、按部门查询和按工资查询等。

单位工资报表的生成。

可以按照在每个月的每个固定时间生成该单位全体员工的月工资。

对于月工资,能够实现按照员工、部门、年、月进行统计分析,产生相应的报表,并可以打印输出此报表。

要提供工资管理系统的帮助文件。

要求:

按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计、物理结构设计,使学生掌握数据库应用软件的开发流程,SQL语句的使用和存储过程的使用。

设计

参数

8个表结构;7个存储过程;6个触发器;7个视图、3处使用游标过程

报告格式规范

 

进度

要求

19.1讲课阅读分析任务书制订设计计划

19.1需求分析概念结构设计

19.2概念结构设计准备文挡

19.2-3逻辑结构设计物理结构设计

19.4写文挡答辩交设计报告书

参考资料

1.雷亮等《数据库原理课程设计》指导书

2.王珊、萨师煊.《数据库系统概述》(第四版).北京:

高等教育出版社.2006。

3.C.J.Date著.孟小峰、王珊等译.《数据库系统导论》(第8版).北京:

机械工业出版社.2007。

4.陈根才等.数据库课程设计.浙江.浙江大学出版社.2007

其它

说明

1.本表应在每次实施前一周由负责教师填写二份,院系审批后交院系办备案,一份由负责教师留用。

2.若填写内容较多可另纸附后。

3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。

教研室主任:

指导教师:

裴仰军、2013年7月10日

摘要

在现代企业管理中,企业信息化是提高企业管理效率的重要手段。

工资管理是企业管理的重要部分,在公司起着越来越重要作用。

本课程设计主要是对公司各项人员的工资进行管理和统计。

工资管理系统分为8个模块,员工基本信息管理模块、部门信息管理模块、基本工资管理模块、出勤信息管理模块、奖惩信息管理模块、津贴管理模块、职称信息管理模块、员工工资管理模块。

本系统采用SQLServer2008作为数据库,使用ODBC作为数据源。

在实现数据库部分功能时按照要求创建了触发器和存储过程。

关键词:

工资管理SQLServer2008触发器存储过程

 

1需求分析

1.1系统目标设计

实现企业的工资管理系统化,使企业管理更加现代化

1.2系统功能分析

(1):

员工不同工种基本工资的设定:

员工工种的不同,工资的标准也不同,根据员工的现任职务设定员工的基本工资。

包括每个员工的姓名、性别、年龄、工龄、职务及其所在的部门等资料的录入来确定员工的基本工资,以及对现有工作人的基本信息的录入工作。

(2):

可以对员工的工资项目进行初始化的设置(包括住房补贴、津贴、工会会费、水电费、住房公积金、养老保险、奖惩、总工资、所得税、职务)。

(3):

根据月工资生成公式,按照员工的考勤情况和工作表现,生成员工工资。

人员查询操作包括按单个员工信息查询、按部门查询和按工资查询等。

 

1.3功能模块分析

根据系统功能的基本要求,可对整个系统划分为几个模块

图1.1功能模块分析

1.4系统全局数据流图

系统的全局数据流图,也称第一层数据流图,是从整体上描述系统的数据流,反映系统数据的整体流向,给设计者、开发者和用户一个总体描述。

图1.2数据流图

1.5数据字典

表1.1部门信息(Departmet_Info)

列名

数据类型

说明

Department_ID

Varchar(4)

部门编号

Department_Name

Varchar(6)

部门名称

Manager

Varchar(6)

部门负责人

Dep_Peonumber

Varchar(4)

部门人数

 

表1.2基本工资(Base_Salary)

列名

数据类型

说明

Duty

Varchar(10)

职务关键字

Base_salary

Float

基本工资

 

表1.3员工信息(Employee_info)

列名

数据类型

说明

Emp_ID

Varchar(15)

员工编号关键字

Emp_Name

Varchar(8)

员工姓名

Sex

char

(2)

性别

Birth_Date

Datetime

出生日期

Emp_time

Datetime

参加工作时间

Deoartment_ID

varchar(4)

所属部门

Duty

Varchar(10)

职务

Politics_Status

Varchar(10)

政治面貌

Telephone

Varchar(11)

电话号码

表1.4员工出勤(Attendence_info)

列名

数据类型

说明

Emp_ID

Varchar(15)

员工编号关键字

Emp_Name

varchar(8)

员工姓名

Months_ID

varchar(10)

月份编号关键字

Months_days

int

本月天数

Holidays

int

公休假天数

Work_days

int

出勤天数

Business_days

int

出差天数

Absent_days

int

缺席天数

Leave_days

int

请假天数

Late_days

int

迟到天数

Leave_early_times

Int

早退天数

表1.5员工津贴(Allowance_info)

列名

数据类型

说明

Emp_ID

Varchar(15)

员工编号关键字

Emp_Name

varchar(8)

员工姓名

Allowance_Month

Varchar(10)

统计时间关键字

Allowance_Days

Varchar

(2)

加班天数

Allowance_Salary

Float

津贴工资

 

表1.6员工工资(Worker_salary)

列名

数据类型

说明

Emp_ID

Varchar(15)

员工编号关键字

Base_Salary

Float

基本工资

House_Allowance

Float

住房补贴

Allowance_Salary

Float

津贴

Trade_union_fee

Float

工会会费

Utilities_fee

Float

水电费

House_fund

Float

住房公积金

Endownment_insutance

Float

养老保险

Rewards_punishment

Float

奖惩

Total_salary

Float

总工资

Income_tax

Float

所得税

Duty

Varchar(10)

职务

Month_ID

Varchar(10)

月工资时间关键字

表1.7用户账号表(User_table)

列名

数据类型

说明

Record_ID

bigint

记录编号关键字

Emp_ID

varchar(15)

员工编号

Emp_Name

varchar(8)

员工姓名

Record_date

datetime

奖惩日期

Record_type

varchar

(2)

奖惩类型

Record_content

varchar(30)

奖惩内容

Record_reason

varchar(30)

奖惩原因

Allow_unit

varchar(20)

批准单位

Remark

varchar(200)

备注

表1.8职称评定信息表(Pro_title)

名称

数据类型

说明

Emp_ID

varchar(15)

员工编号关键字

Emp_Name

varchar(8)

员工姓名

Assess_date

datetime

评定日期

Assess_unit

varchar(20)

评定单位

Assess_title

varchar(8)

评定职称

Remark

varchar(200)

备注

2概念结构设计

2.1构成系统的实体型

由工资管理系统的数据流图和数据字典,抽取出系统的8个主要实体,包括:

部门、基本工资、员工、出勤、津贴、工资、奖惩、职称。

部门实体型属性:

Department_IDDepartment_NameManagerDep_Peonumber

基本工资实体型属性:

DutyBase_salary

员工实体型属性:

Emp_IDEmp_NameSexBirth_dateEmp_timeDepartment_IDDutyPolitics_StatusTelephone

出勤记录实体型属性:

Emp_IDEmp_NameMonths_IDMonths_daysHolidaysWork_daysBusiness_daysAbsent_daysLeave_daysLate_daysLeave_early_times

津贴实体型属性:

Emp_IDEmp_IDAllowance_MonthAllowance_DaysAllowance_Salary

工资实体型属性:

Emp_IDBase_SalaryHouse_AllowanceAllowance_SalaryTrade_union_feeUtilities_feeHouse_fundEndownment_InstutanceRewards_PunishmentTotal_SalaryIncome_taxDutyMonth_ID

奖惩实体型属性:

Record_IDEmp_IDEmp_NameRecord_dateRecord_typeRecord_contentRecord_reasonAllow_unitRemark

职称实体型属性:

Emp_IDEmp_NameAssess_dateAssess_unitAssess_titleRemark

 

2.2工资管理系统E-R图

图2.1工资管理系统E-R图

3逻辑结构设计

3.1逻辑结构简介

逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。

设计逻辑结构一般分为3步进行:

(1)将概念结构转换为一般的关系、网状、层次模型;

(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;

(3)对数据模型进行优化。

3.2关系模型

将E-R图转换为关系模型实际上就是要奖实体型、实体的属性和实体型之间的联系转换为关系模式,这种转换一般遵循如下原则:

一个实体型转换为一个关系模式,一个多对多的关系可以转化为一个关系模式,而一对多的关系可以融合在其他的相关的关系模式中。

例如:

(1)员工与出勤之间是一对多的关系,所以将员工和出勤以及属于关系设计成以下关系模式:

员工(Emp_IDEmp_NameSexBirth_dateEmp_timeDepartment_IDDutyPolitics_StatusTelephone)

出勤记录(Emp_IDEmp_NameMonths_IDMonths_daysHolidaysWork_daysBusiness_daysAbsent_daysLeave_daysLate_daysLeave_early_times)

属于((Emp_IDEmp_NameSexBirth_dateEmp_timeDepartment_IDDutyPolitics_StatusTelephoneMonths_IDMonths_daysHolidaysWork_daysBusiness_daysAbsent_daysLeave_daysLate_daysLeave_early_times)

(2)员工与职称评定之间是一对一的关系,所以将员工和职称评定以及属于关系设计成以下关系模式:

员工(Emp_IDEmp_NameSexBirth_dateEmp_timeDepartment_IDDutyPolitics_StatusTelephone)

职称评定(Emp_IDEmp_NameAssess_dateAssess_unitAssess_titleRemark)

属于(Emp_IDEmp_NameSexBirth_dateEmp_timeDepartment_IDDutyPolitics_StatusTelephoneAssess_dateAssess_unitAssess_titleRemark)

4物理模型设计

数据库物理设计是将逻辑设计影射到存储介质上,利用可用的硬件和软件功能尽可能快地对数据进行物理访问和维护。

4.1定义数据库

SQLServer2008数据库文件分为3中类型:

主数据文件、次数据文件和日志文件。

通过SQL语言进行数据库创建,创建数据库的语句如下:

CreatedatabaseSalary;

4.2创建表

UseSalary;

部门信息Departmet_Info

createtableDepartment_Info(

Department_IDVarchar(4)primarykey,--部门编号

Department_NameVarchar(6)notnull,--部门名称

ManagerVarchar(6),--部门负责人

Dep_PeonumberVarchar(4)--部门人数

);

基本工资Base_Salary

createtableBase_Salary(

DutyVarchar(10)primarykey,--职务

Base_salaryFloat,--基本工资

);

员工信息Employee_Info

createtableEmployee_Info(

Emp_IDVarchar(15)primarykey,--员工编号

Emp_NameVarchar(8),--员工姓名

Sexchar

(2)check(Sex='男'orSex='女'),--性别

Birth_DateDatetime,--出生日期

Emp_timeDatetime,--参加工作时间

Deoartment_IDvarchar(4)ForeignkeyreferencesDepartment_Info(Department_ID),--所属部门

DutyVarchar(10),--职务

Politics_StatusVarchar(10),--政治面貌

TelephoneVarchar(11),--电话号码

);

员工出勤Attendance_info

createtableAttendance_info(--出勤信息

Emp_IDVarchar(15)ForeignkeyreferencesEmployee_Info(Emp_ID),--员工编号

Emp_Namevarchar(8),--员工姓名

Months_IDvarchar(10),--月份编号

Months_daysint,--本月天数

Holidaysint,--公休假天数

Work_daysint,--出勤天数

Business_daysint,--出差天数

Absent_daysint,--缺席天数

Leave_daysint,--请假天数

Late_daysint,--迟到天数

Leave_early_timesint,--早退天数

primarykey(Months_ID,Emp_ID)

);

员工津贴Emp_allowance

createtableAllowance(

Emp_IDVarchar(15)ForeignkeyreferencesEmployee_Info(Emp_ID),--员工编号

Emp_Namevarchar(8),--员工姓名

Allowance_MonthVarchar(10),--统计时间

Allowance_DaysVarchar

(2),--加班天数

Allowance_SalaryFloat,--津贴工资

primarykey(Allowance_Month,Emp_ID)

);

员工工资表Emp_salary

createtableEmp_Salary(

Emp_IDVarchar(15)ForeignkeyreferencesEmployee_Info(Emp_ID),--员工编号

Base_SalaryFloat,--基本工资

House_AllowanceFloat,--住房补贴

Allowance_SalaryFloat,--津贴

Trade_union_feeFloat,--工会会费

Utilities_feeFloat,--水电费

House_fundFloat,--住房公积金

Endownment_insutanceFloat,--养老保险

Rewards_punishmentFloat,--奖惩

Total_salaryFloat,--总工资

Income_taxFloat,--所得税

DutyVarchar(10)ForeignkeyreferencesBase_Salary(Duty),--职务

Month_IDVarchar(10),--月工资时间

primarykey(Month_ID,Emp_ID),

);

奖罚记录Reward_pun

createtableReward_pun(

Record_IDbigintprimarykey,--记录编号关键字

Emp_IDvarchar(15)ForeignkeyreferencesEmployee_Info(Emp_ID),--员工编号

Emp_Namevarchar(8),--员工姓名

Record_datedatetime,--奖惩日期

Record_typevarchar

(2),--奖惩类型

Record_contentvarchar(30),--奖惩内容

Record_reasonvarchar(30),--奖惩原因

Allow_unitvarchar(20),--批准单位

Remarkvarchar(200),--备注

);

职称评定信息表(Pro_title)

createtablePro_title(

Emp_IDvarchar(15)ForeignkeyreferencesEmployee_Info(Emp_ID)primarykey,--员工编号

Emp_Namevarchar(8),--员工姓名

Assess_datedatetime,--评定日期

Assess_unitvarchar(20),--评定单位

Assess_titlevarchar(8),--评定职称

Remarkvarchar(200),--备注

);

4.3创建存储过程

1.插入一条员工信息

USE[Salary]

GO

createPROCEDURE[dbo].[insert_Employee_Info]

(@Emp_ID_1[varchar](15),

@Emp_Name_2[varchar](8),

@Sex_3[char]

(2),

@Birth_Data_4[datetime],

@Emp_time_5[datetime],

@Department_ID_6[varchar](4),

@Duty_7[varchar](10),

@Politics_Status_8[varchar](10),

@Telephone_9[varchar](11))

ASInsertInto[Salary].[dbo].[Employee_Info]

([Emp_ID],

[Emp_Name],

[Sex],

[Birth_Date],

[Emp_time],

[Department_ID],

[Duty],

[Politics_Status],

[Telephone])

VALUES

(@Emp_ID_1,

@Emp_Name_2,

@Sex_3,

@Birth_Data_4,

@Emp_time_5,

@Department_ID_6,

@Duty_7,

@Politics_Status_8,

@Telephone_9)

2.按部门编号

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1