SqlServer 课程设计报告Word文档格式.docx

上传人:b****5 文档编号:17194425 上传时间:2022-11-28 格式:DOCX 页数:15 大小:175.27KB
下载 相关 举报
SqlServer 课程设计报告Word文档格式.docx_第1页
第1页 / 共15页
SqlServer 课程设计报告Word文档格式.docx_第2页
第2页 / 共15页
SqlServer 课程设计报告Word文档格式.docx_第3页
第3页 / 共15页
SqlServer 课程设计报告Word文档格式.docx_第4页
第4页 / 共15页
SqlServer 课程设计报告Word文档格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

SqlServer 课程设计报告Word文档格式.docx

《SqlServer 课程设计报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《SqlServer 课程设计报告Word文档格式.docx(15页珍藏版)》请在冰豆网上搜索。

SqlServer 课程设计报告Word文档格式.docx

5.2触发器12

6客户端程序设计15

6.1登陆界面15

6.2用户界面15

6.3管理员界面16

7总结17

致谢18

参考文献19

1设计内容和要求

每个企业的财务管理都是很烦琐的工作,稍有马虎就会产生很大的损失。

1.1系统目标设计

实现企业的工资管理系统化、规范化和自动化。

可以和其他管理系统进行连接,例如人事管理系统,使企业更加高效地、科学地进行员工管理。

尽量地减少手工操作,使企业管理更加现代化。

1.2系统功能分析

为了保证系统具有高度的安全性,要有登录界面,进行用户身份的验证。

用户分为不同的级别,例如管理员级用户和普通用户。

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

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

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

可以对员工的工资项目进行初始化的设置(包括个人所得税、上月工资零头、本月工资零头、职务工资、级别工资、基本工资、工龄工资、独子费、津贴补贴、离退费、交通费、电话费补贴。

书报费补贴等人

对系统管理员的密钥,以及其他系统使用人员的一些信息,例如用户名、权限、密钥的设定。

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

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

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

员工年终奖金的生成。

单位工资报表的生成。

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

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

工资的发放,要求能够实现银行打卡的功能。

工资转账的功能,包括转账设置、工资转账、工资凭证查询、结转下月的功能。

1.3系统设计提示

根据功能分析,可将功能模块设计成如下图所示的形式。

2需求分析

2.1目标设计

1.实现企业的工资管理系统化、规范化和自动化

2.尽量地减少手工操作,使企业管理更加现代化

3.各个模块直接有必要的联系,使企业更加高效地、科学地进行员工管理。

2.2功能需求

1.为了保证系统具有高度的安全性,需要要有登录界面,进行用户身份的验证。

用户分为不同的级别,管理员级用户和普通用户。

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

3.对员工的工资项目进行初始化的设置,包括个人所得税、上月工资零头、本月工资零头、职务工资、级别工资、基本工资、工龄工资、独子费、津贴补贴、离退费、交通费、电话费补贴,等

4.员工有登陆并查看自己工资的功能。

5.管理员有管理员工的、录入考勤、管理工资标准等功能。

2.3系统模块图

3概念结构设计

3.1数据库的创建

CREATEDATABASE工资管理

NAME='

工资管理'

FILENAME='

D:

\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\DATA\工资管理.mdf'

SIZE=3072KB,MAXSIZE=UNLIMITED,FILEGROWTH=1024KB

LOGON

工资管理_log'

\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\DATA\工资管理_log.ldf'

SIZE=1536KB,MAXSIZE=2048GB,FILEGROWTH=10%

COLLATEChinese_PRC_CI_AS

1.数据项:

ID

含义说明:

唯一标识每个职工。

类型:

varchar

长度:

6

取值范围:

小于等于6

取值含义:

一串数字,唯一表示一个员工

2.“职位”的描述:

数据结构:

职位。

员工所能从事的岗位名称。

类型:

20

小于等于20

一个字符串,表示员工的职位

3.“级别”的描述:

级别

一个职位对应的分级别

一个字符串,表示员工的职位所对应的,级别

4.“本月总工资”的描述:

本月总工资

含义说明:

一个员工某月的工资

smallmoney

一个数字,表示员工的某月的工资数额

4逻辑结构设计

4.1表的关系图

4.2表的设计

4.2.1员工信息表

列名

数据类型

长度

说明

主键

密码

姓名

性别

char

2

出生日期

smalldatetime

加入时间

是否有独身子女

int

身份证号

18

是否离退

职位

4.2.2工资标准表

基本工资

职务工资

津贴补贴

独子费

离退费

交通费补贴

电话费补贴

4.2.3级别工资表

级别工资

工龄工资

4.2.4考勤表

员工ID

迟到次数

早退次数

请假天数

旷工天数

4.2.5员工工资表

工资年份

工资月份

个人所得税

缺勤应扣

本月应发工资

4.2.6管理员表

用户名

邮箱

4.3约束

4.3.1主键

员工信息表:

ID

工资标准表:

职位

级别工资表:

职位,级别

考勤表:

员工ID,年,月

员工工资表:

员工ID,工资年份,工资月份

管理员表:

4.3.2外键

员工信息表.ID---考勤表.员工ID

员工信息表.ID---员工工资表.员工ID

员工信息表.职位---工资标准表.职位

员工信息表.级别---级别工资表.级别

工资标准表.职位---级别工资表.职位

5服务器端程序设计

5.1存储过程

51.1存储过程gongzi

功能:

根据传入的员工ID,计算该员工上个月的总工资,然后将该员工上月的总工资更新为计算的结果。

创建代码;

use工资管理

go

createprocgongzi

@idvarchar(6)

as

declare@zongsmallmoney

select@zong=工资标准表.基本工资+工资标准表.职务工资+工资标准表.津贴补贴

+工资标准表.独子费*员工信息表.是否有独身子女+工资标准表.交通费补贴

+工资标准表.电话费补贴+级别工资表.级别工资

+级别工资表.工龄工资*(year(getdate())-year(员工信息表.加入时间))

from工资标准表

innerjoin员工信息表on员工信息表.职位=工资标准表.职位

innerjoin级别工资表on员工信息表.级别=级别工资表.级别

and员工信息表.职位=级别工资表.职位

where员工信息表.ID=@id

update员工工资表set本月总工资=@zong

where员工ID=@id

and工资年份=year(getdate())and工资月份=(month(getdate())-1)

5.1.2存储过程gz

创建一个游标mycursor,用于查询所有的员工ID,然后依次读取每个员工ID,自动调用存储过程gongzi,这样就可以把所有员工的总工资计算出来了。

createprocgz

declare@idvarchar(6)

DECLAREmycursorCURSOR

FOR

selectID

from员工信息表

OPENmycursor

FETCHNEXTFROMmycursor

into@id

execgongzi@id

WHILE@@FETCH_STATUS=0

BEGIN

FETCHNEXTFROMmycursor

into@id

execgongzi@id

END

CLOSEmycursor

deallocatemycursor

5.2触发器

5.2.1触发器kaoqin

当管理员为某员工录入了考情信息后,系统自动算出该员工应该扣多少工资,并插入到员工工资表。

createtriggerkaoqin

on考勤表

forinsert

begin

declare@nvarchar(6)

declare@t1int

declare@t2int

declare@msmallmoney

select@m=(inserted.迟到次数*5+inserted.早退次数*5+inserted.请假天数*10+inserted.旷工天数*50),

@n=inserted.员工ID,

@t1=inserted.年,

@t2=inserted.月

frominserted

update员工工资表set缺勤应扣=@m

where员工ID=@n

and工资年份=@t1

and工资月份=@t2

end

5.2.2触发器shifagongzi

当更新员工的总工资时,自动计算员工的个人所得税和应发工资,并更新到表中。

createtriggershifagongzi

on员工工资表

forupdate

declare@idvarchar(6)

declare@nianint

declare@yueint

declare@suismallmoney

declare@yingfasmallmoney

select@sui=inserted.本月总工资*0.08,@id=inserted.员工ID,@nian=inserted.工资年份,@yue=inserted.工资月份,@yingfa=inserted.本月总工资-@sui

frominserted

update员工工资表set个人所得税=@sui,本月应发工资=@yingfawhere员工工资表.员工ID=@idand员工工资表.工资年份=@nianand员工工资表.工资月份=@yue

5.2.3触发器yuangong

当管理员从员工信息表中删除一个员工时,则自动删除与该员工有关的其他表中的信息。

createtriggeryuangong

on员工信息表

insteadofdelete

select@id=deleted.IDfromdeleted

delete员工工资表where员工ID=@id

delete考勤表where员工ID=@id

delete员工信息表whereID=@id

6客户端程序设计

6.1登陆界面

输入用户名密码,填好验证码,并选择帐号类型即可登陆

6.2用户界面

6.2.1基本信息查询

图6.2个人信息查询

6.2.2任意月份工资查询

图6.3工资查询

6.3管理员界面

6.3.1添加员工

图6.4添加员工

7总结

经过两周的设计,基本上完成了工资管理系统的设计,在系统中写了一个存储过程调用它可以直接计算并更新所有员工的上个月的工资,调用存储过程的语句可以在数据库代理中设置成每个月的特定时间运行,这样不用人工干预,到时间系统会自动算出每个员工上个月相应的工资,管理员只用管理好员工信息和按时录入考勤就可以了。

达到了比较智能的要求。

员工可以用自己的帐号和密码登陆系统查询自己的个人信息、工资和考勤记录,管理员除了查询还有修改的功能,可以修改员工信息,工资标准等。

通过这两周的课程设计,成功的运用学过的知识设计出了工资管理系统,虽然功能还不是很完善,但是基本功能都已经实现,通过这次设计,提高了自己运用知识的能力,由于在设计的时候遇到了很多问题,最后通过各种途径也成功解决了,这样也提高了自己分析问题和解决问题的能力,所以通过这次课程设计,学到了很多东西,对自己的能力有很大的提高。

致谢

在这次课程设计中,遇到过很多问题,有些甚至是没有学过的,但是经过询问老师,和同学讨论与网上搜索,都成功解决了问题。

首先感谢X老师和龙X文老师的指导,也感谢帮助我的同学,感谢网上提供相关知识的朋友,在你们的帮助下终于成功完成了课程设计,没有大家的帮助,完全靠自己的力量完成是很困难的。

参考文献

[1]肖慎勇数据库及其应用清华大学出版社2007

[2]何宁;

藤冲数据库技术应用实验教程机械工业出版社2007

[3]滕福生数据库的设计和应用四川科学技术出版社1985

[4]岳昆数据库技术清华大学出版社2007

[5]丁宝康数据库技术学习指导书科学出版社2003

[6]闪四清SQLServer2005基础教程清华大学出版社2007

[7]刘智勇SQLServer2005宝典电子工业出版社2007

[8]黄开枝SQLServer2005中文版基础教程清华大学出版社2007

[9]蒙祖强SQLServer2005应用开发大全清华大学出版社2007

[10]胡百敬SQLServer2005数据库开发详解电子工业出版社2006

[11]陈克力SQLServer2005编程基础清华大学出版社2008

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

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

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

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