数据库员工薪资管理系统课设.docx

上传人:b****7 文档编号:10378966 上传时间:2023-02-10 格式:DOCX 页数:14 大小:123.67KB
下载 相关 举报
数据库员工薪资管理系统课设.docx_第1页
第1页 / 共14页
数据库员工薪资管理系统课设.docx_第2页
第2页 / 共14页
数据库员工薪资管理系统课设.docx_第3页
第3页 / 共14页
数据库员工薪资管理系统课设.docx_第4页
第4页 / 共14页
数据库员工薪资管理系统课设.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

数据库员工薪资管理系统课设.docx

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

数据库员工薪资管理系统课设.docx

数据库员工薪资管理系统课设

课程设计(论文)任务书

学院专业班

一、课程设计(论文)题目员工薪资管理系统

二、课程设计(论文)工作自2016年6月13日起至2016年6月17日止

三、课程设计(论文)地点:

软件工程实训中心

四、课程设计(论文)内容要求:

1.本课程设计的目的

(1)巩固和加深对数据库基本知识的理解,提高综合运用课程知识的能力。

(2)使学生巩固所学的理论基础知识的理解,掌握数据库设计的全过程及技术与方法。

(3)培养学生编制软件文档及数据库设计的能力,提高学生独立分析问题、解决问题的能力,锻炼和加强学生的动手能力。

使学生掌握使用数据库各种设计工具和检索文献的能力。

2.课程设计的任务及要求

(1)根据选题任务要求,收集并查询相关文献资料,明确系统需求;通过对系统的功能分析和数据分析进行系统的需求分析设计,完成业务流程图、数据流图(DFD图)及数据字典(DD)等阶段性成果;

(2)数据库的概念结构设计,完成基本全局E-R图的设计并体现设计过程;

(3)数据库的逻辑结构设计,完成数据库关系模式的设计及优化;

(4)数据库的物理结构设计,完成数据库实施的所有sql脚本的编写及索引文件的创建;完成安全性控制及完整性约束;

(5)数据库的实施;

(6)特别要求自己独立完成;

2)创新要求:

在基本要求达到后,可进行创新设计,如完善的功能、友好的人机界面。

3)课程设计论文编写要求

(1)要按照书稿的规格打印与写课程设计报告书;

(2)报告包括目录、绪论、正文、小结、参考文献、附录等;

(3)课程设计报告装订按学校的统一要求完成;

 

4)课程设计进度安排

内容天数地点

构思及收集资料1图书馆

数据库设计3实验室

撰写报告1图书馆、实验室

学生签名:

2016年6月13日

课程设计(论文)评审意见

(1)考勤(20分):

优( )、良( )、中( )、一般( )、差( );

(2)设计内容(40分):

优( )、良( )、中( )、一般( )、差( );

(3)答辩  (25分):

优( )、良( )、中( )、一般( )、差( );

(4)文档格式规范整齐(15分)优( )、良( )、中( )、一般( )、差( );

(5)任何抄袭成绩一律归零;

 

评阅人:

职称:

讲师

2016年6月17日

 

一绪论

某单位现有1000名员工,其中有管理人员、财务人员、技术人员和销售人员;该单位下设4个科室,即经理室、财务科、技术科和销售科;

工资由基本工资、福利补贴和奖励工资构成,失业保险和住房公积金在工资中扣除;每个员工的基本资料有姓名、性别、年龄、部门和职务(如经理、科长、工程师、销售员等);每月个人的最高工资不超过5000元,工资按月发放,实际发放的工资金额为工资减去扣除。

二需求分析

1.员工管理系统的分析

(1)员工的部门不同,领去的基本工资也不同。

(2)同一部门的员工,职务不同,工资也不同。

(3)工资由基本工资,福利补贴和奖励工资组成,失业保险和住房公积金在工资中扣除。

(4)每个员工的基本资料有姓名、性别、年龄、单位、参加工作时间和职务(如经理、主任、科长、工程师、办事员和工人等)。

(5)每月个人的最高工资不超过5000元。

工资每月按部门发放,并根据本月考勤有所扣减。

2.处理对象

系统要处理的对象包括部门,员工,工资,考勤,职务等五个对象。

(1)部门:

包括经理,科长,工程师,销售员四个部门

(2)员工:

包括姓名、性别、年龄、部门和职务四个属性

(3)工资:

包括基本工资、福利补贴和奖励工资构成,失业保险和住房公积金,病假扣款,事假扣款和其他扣款以及应发工资,实发工资。

(4)考勤:

包括姓名,正常天数,迟到天数,早退天数,旷工天数以及早退天数。

(5)职务:

包括职务名称以及职务人数。

另外本系统设计员工工号并以此为主键。

 

三概要设计

1.功能处理要求

(1)实现按照科室录入个人的基本资料、工资和扣除金额的数据。

(2)计算个人的实际发放工资。

(3)根据日考勤统计月工资扣款

(4)按科室、职务分类统计人数和工资金额。

(5)实现分类查询。

(6)能够删除辞职人员的数据。

2.系统结构图

四数据库完整性设计

员工实体E-R图

职务E-R图

工资实体E-R图

考勤实体E-R图

部门实体E-R图

五物理设计

员工信息表:

工资表:

考勤表:

职务表:

部门表:

六数据库实施

CREATEDATABASE员工工资管理库

ONPRIMARY(

NAME=员工工资管理库,

FILENAME='D:

\员工工资管理库_data.mdf',

SIZE=4MB,

MAXSIZE=10MB,

FILEGROWTH=2MB

LOGON(NAME='工资管理库_log',

FILENAME='D:

\工资管理库.ldf',

SIZE=1MB,MAXSIZE=25MB,FILEGROWTH=10%)

createtable部门(

部门名称CHAR(50)NOTNULLprimarykey,

部门负责人CHAR(50)NOTNULL,

部门人数CHAR(50)

);

 

createtable员工(

工号CHAR(50)NOTNULLprimarykey,

姓名CHAR(50)NOTNULL,

性别CHAR

(2)DEFAULT'男'CHECK(性别IN('男','女')),

年龄CHAR(10)NOTNULL,

部门CHAR(50)NOTNULL,

职务CHAR(50)

);

 

CREATETABLE工资(

工号char(50)notnullprimarykey,

工资年月char(50)notnull,

基本工资decimalnotnull,

福利补贴decimal,

奖励工资decimal,

失业保险decimal,

住房公积金decimal,

病假扣款decimal,

事假扣款decimal,

其他扣款decimal,

应发工资decimal,

实发工资decimalnotnull,

foreignkey(工号)references员工(工号));

altertable工资

addconstraintCK_gonghocheck(工号>0);

altertable工资

addconstraintCK_gongzicheck(实发工资<=5000);

 

CREATETABLE考勤(

工号char(50)notnullprimarykey,

姓名char(50)notnull,

正常天数char(50)notnull,

旷工天数char(50),

迟到天数char(50),

早退天数char(50),

考勤扣款char(50)notnull

);

 

insertinto部门values('财务部','王玲','20')

insertinto部门values('生产部','丽丽','400')

insertinto部门values('董事会','李四','10')

insertinto部门values('后勤部','二子','40')

insertinto部门values('公关部','小丽','15')

insertinto部门values('行政部','琪琪','20')

insertinto部门values('企划部','小新','15')

insertinto部门values('销售部','小海','10')

insertinto部门values('人力资源部','丽子','5')

insertinto员工values('1001','李民','男','25','天津','111000101','已婚','专科','销售部','内销','4','职工')

insertinto员工values('1002','李四','男','50','上海','111000102','已婚','本科','董事长','null','30','董事长')

insertinto员工values('1003','丽丽','女','25','北京','111000103','未婚','本科','生产部','电工','8','生产部部长')

insertinto员工values('1004','王玲','男','35','东京','111000104','已婚','研究生','财务部','预算','6','财务部部长')

insertinto员工values('1005','二子','女','30','江西','111000105','未婚','本科','后勤部','车工','7','后勤部部长')

insertinto员工values('1006','小丽','女','26','苏州','111000106','已婚','本科','公关部','null','3','公关部部长')

insertinto员工values('1007','小新','男','27','扬州','111000107','已婚','研究生','企划部','主管','2','企划部部长')

insertinto员工values('1008','琪琪','女','24','安徽','111000108','未婚','本科','行政部','null','8','行政部部长')

insertinto员工values('1009','小海','男','23','南京','111000109','已婚','专科','销售部','主管','4','销售部部长')

insertinto员工values('1010','丽子','女','22','江西','111000110','未婚','本科','人力资源部','null','4','人力资源部部长')

insertinto员工values('1011','小美','女','26','海南','111000111','已婚','本科','公关部','前台','5','职工')

insertinto员工values('1012','小韩','男','20','山东','111000112','离异','本科','财务部','融资','5','出纳')

insertinto工资values('1001','2013-12','2500','500','25','2','15','4','加急','50','50','100','3500','3400')

insertinto工资values('1002','2013-12','10000','600','100','5','25','2','null','0','0','0','15000','20000')

insertinto工资values('1003','2013-12','4000','500','30','2','30','4','核对','50','50','100','5000','4800')

insertinto工资values('1004','2013-12','3500','500','30','2','30','4','加急','50','50','100','5000','4800')

insertinto工资values('1005','2013-12','4000','500','30','2','30','4','加急','50','50','100','5000','4800')

insertinto工资values('1006','2013-12','4000','500','30','2','30','4','加急','50','50','100','5000','4800')

insertinto工资values('1007','2013-12','3500','500','30','2','30','4','审核','50','50','100','5200','5000')

insertinto工资values('1008','2013-12','3500','500','30','2','30','4','加急','50','50','100','5400','5200')

insertinto工资values('1009','2013-12','3500','500','30','2','30','4','审核','50','50','100','5000','4800')

insertinto工资values('1010','2013-12','3500','500','30','2','30','4','加急','50','50','100','4800','4300')

insertinto工资values('1011','2013-12','2500','500','25','2','15','4','加急','50','50','100','3500','3400')

insertinto工资values('1012','2013-12','2500','500','25','2','15','4','加急','50','50','100','3500','3400')

insertinto员工登陆密码values('1001','1101')

insertinto员工登陆密码values('1002','1102')

insertinto员工登陆密码values('1003','1103')

insertinto员工登陆密码values('1004','1104')

insertinto员工登陆密码values('1005','1105')

insertinto员工登陆密码values('1006','1106')

insertinto员工登陆密码values('1007','1107')

insertinto员工登陆密码values('1008','1108')

insertinto员工登陆密码values('1009','1109')

insertinto员工登陆密码values('1010','1110')

insertinto员工登陆密码values('1011','1111')

insertinto员工登陆密码values('1012','1112')

insertinto工龄工资values('1','3000')

insertinto工龄工资values('2','4000')

insertinto工龄工资values('3','5000')

insertinto工龄工资values('4','6000')

insertinto工龄工资values('5','7000')

insertinto工龄工资values('6','8000')

小结

参考文献

[1]王,萨.《数据库系统概论》高等教育出版社

[2]

附录

通过一周时间的努力,终于完成了本次数据库课程设计,这次课程设计让我学到了很多东西,比如对整体结构的设计,对细节的把握以及对全局的掌控等。

经过几天的自学、查阅书籍、自我摸索及实践,让我掌握了数据库设计的基本思想,也学会了对数据库的基本使用。

同时我也对有了更深入的了解,对事件驱动的编程机制有了更熟练的运用。

要做一个项目,首先要学会根据实际的问题抽象出概念模型和系统中各个实体的E-R模型;然后将其进行转化为与之相应的关系模型;再由此模型进行数据库的设计以及数据库的检测;有了这几道工序作铺垫,才能够尽善尽美地去编写程序代码来实现系统具体的功能。

总之,这次课程设计让我收获颇多,相信这对于我今后工作和学习上的帮助也是不可估量的。

本系统实现的功能有查询、插入、修改、删除等,这就要求我能够熟练掌握和使用数据库的操作和使用,另外,数据得完整性和安全性也是本次设计得一个重点和难点,如果不能做好,那么这个系统也就相应的失去它的优势。

在本次设计过程中,我也遇到了一些问题,毕竟我是首次设计这种系统,经验不足,还有很多设计的方法和技巧没有掌握,但是我通过查询资料和请教别人,终于把遇到得问题解决了。

本次设计使我获益匪浅,不仅使我对数据库的知识更加熟练,掌握得更加牢固,为今后的进一步学习打下了坚实的基础,还让我学会了更多的设计方法和技巧,使我的设计能力有了进一步提高。

雨滴穿石,不是靠蛮力,而是靠持之以恒。

——拉蒂默

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

当前位置:首页 > 农林牧渔 > 农学

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

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