人事管理系统 数据库课程设计.docx

上传人:b****8 文档编号:9131078 上传时间:2023-02-03 格式:DOCX 页数:16 大小:19.44KB
下载 相关 举报
人事管理系统 数据库课程设计.docx_第1页
第1页 / 共16页
人事管理系统 数据库课程设计.docx_第2页
第2页 / 共16页
人事管理系统 数据库课程设计.docx_第3页
第3页 / 共16页
人事管理系统 数据库课程设计.docx_第4页
第4页 / 共16页
人事管理系统 数据库课程设计.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

人事管理系统 数据库课程设计.docx

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

人事管理系统 数据库课程设计.docx

人事管理系统数据库课程设计

课程设计报告

 

课程设计名称:

数据库原理与应用

系部:

学生姓名:

班级:

学号:

成绩:

指导教师:

开课时间:

2011-2012学年1学期

一.设计题目:

人事管理系统

二.主要内容:

在当前中国教育形式下,对学生的评价很大程度上还是侧重于学生的成绩,所以老师对学生的试卷测试势必不可少的。

那么,要提高测试的质量,让学生得到一次良好的测试体验,更好的提高学习水平,就必须在试卷上下足功夫。

随着IT业的迅速发展,计算机的应用已逐渐进入到社会生活中的各个领域,数据库系统也越来越多的被人们使用。

本次设计就是为了解决学校平时对学生进行测试时遇到的一些问题,使得老师的工作量大大减少,而且也提高了学校对学生水平的测试质量,使学生能够得到更大的提高。

最终达到提高学校的教学质量的目的。

三.具体要求

1.课程设计的内容独立自主完成,课程设计报告内容完整、格式规范、排版整洁美观;

2.后台数据库采用MSSQLSERVER2005,前台界面语言不限,编写的程序代码,须有较详细的注释说明;

四.进度安排

课程设计安排:

16周

星期一讲解课程设计的内容,安排每一天的具体任务,分配并熟悉题目;

星期二需求分析:

给出系统的功能需求、性能需求,并绘制DFD和DD;

星期三概念结构设计:

绘制实体属性图(可选),局部ER图和全局ER图;

星期四逻辑结构设计:

转换、优化、外模式的设计;

星期五物理结构设计及数据库实施;

17周

星期一应用程序编制调试、整理课程设计报告,并检查;

星期二根据反馈结果修改课程设计;

星期三提交作业

上交的材料:

课程设计的电子稿、打印稿、源码(SQL代码和程序代码)

五.成绩评定

考核方法:

现场验收(占50%),课程设计报告(占50%)。

考核内容:

学习态度(出勤情况,平时表现等)、方案合理性、各阶段的图表与程序编制质量、设计报告质量。

成绩评定:

优,良,中,及格,不及格。

特别说明:

(1)如发现抄袭,按照不及格处理。

(2)材料不齐的,考核等级降一级。

电子稿件以压缩文件的形式上交,压缩命名为:

11位学号+姓名

正文:

一、需求分析

1、系统功能的基本要求:

(1)员工各种信息的输入与修改,包括员工的基本信息、学历信息、婚姻状况信息、职称,简历,考核结果等。

(2)对于转出、辞职、辞退、退休员工信息的处理;

(3)按照一定的条件,查询、统计符合条件的员工信息

2、功能分析:

人事管理系统的基本功能是对企事业单位的组织结构和员工进行管理,本系统的主要功能分为:

部门信息管理、员工基本信息管理、员工考勤管理、员工工作考评信息管理和系统用户管理。

本系统的目标需要完成这些功能的建设:

1)员工基本信息管理:

添加、修改、删除和查看员工的基本信息,包括员工编号、姓名、性别、生日、所在部门等信息查询每个部门的详细信息;

2)部门信息管理:

添加部门信息,包括部门编号、部门名称、部门职能描述和上级部门等信息;具有修改、删除和查看部门信息的功能;

3)员工考勤管理:

可以添加、修改、删除和查询员工考勤信息,包括考勤月份、病假天数、事假天数、旷工天数等信息 月度考勤统计表;

4)员工工作考评管理功能:

添加、修改、删除和查看员工工作考评信息,包括考评月份、奖励事由、奖励金额、处罚事由、处罚金额和总体评价等信息;

5)系统用户管理功能:

添加、修改、删除、查看系统用户信息,包括用户名、密码、员工编号和用户类型(系统管理员和普通用户)等信息;

6]系统帮助信息:

显示“关于”对话框,主要是关于本系统的相关信息;

3、绘出系统的逻辑模型:

数据流程图。

第一层数据流

系统管理员

系统数据库

人事管理系统

人事信息

人事信息

员工信息表

登记新员工信息

新进员工的信息

员工信息

员工信息

管理员

信息查询

查询

员工信息

更新自己的信息

查询

员工

要更新的信息

图1员工信息管理数据流

部门信息表

更新部门的信息

要更新部门的信息

部门信息

部门信息

管理员

信息查询

查询

部门信息

查询

员工

 

图2部门信息管理数据流

人事部

办理相关手续

申请人事调动

批准或是不批准

部门

审批结果

人事变动

登入

审批

部门信息表

修改

查询

员工信息

修改

考核结果

批准或不批准

上级领导们

图3人事调动数据流

提供出勤信息

打分

出勤记录

员工上下班

员工

财务部

信息出勤信息

提供工资信息

查询

工资表

发工资

工资信息

图4工资数据流

二、概念结构设计

姓名

ID

员工号

电话

出生日期

员工

学历

性别

职务

 

员工实体图

部门名称

部门编号

 

部门人数

部门简介

部门

 

部门实体图

工号

月份

奖金

姓名

 

奖金实体图

月份

工号

天数

加班工资

姓名

 

加班实体图

用户表

密码

用户名

用户实体图

全勤天数

迟到天数

考勤时间

 

考勤表

病假天数

工号

 

事假天数

 

考核实体图

从上面实体图可以得出总e-r图:

部门

人事变动记录

1

变动时间

变动员工

属于

1

员工

1n

奖金工资

应得

n

m1

考核时间

考核

基本工资

1

n

考核项目

三、逻辑结构设计

员工(工号,姓名,性别,出生日期,部门号,职务,学历,电话,ID)

部门(部门号,部门名称,部门人数,职能描述)

工资(工号,工资)

加班(员工号,月份,姓名,天数,钱)

奖金(员工号,月份,姓名,钱)

出勤表(工号,考勤日期,全勤天数,迟到天数,病假天数,事假天数)

考核表(工号,名字,考核时间,交际能力,专业能力,身体能力)

四、物理设计

数据库物理设计阶段的任务是根据具体计算机系统(dbms和硬件等)的特点,为给点的数据库系统确定合理的储存结构和存取方法。

所谓的‘合理’主要有两个含义:

一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。

主要体现在后者。

(1)建立索引:

1.对表部门在属性列领导号上建立非聚集索引,

2.对表员工在属性列出生日期上建立费聚集索引,在属性列学历上建立非聚集索引

3.对表出勤在属性列上班日期建立非聚集索引。

4.对表工资在属性列基本工资上建立非聚集索引。

5.对表职务调动在属性列奖惩类型上建立非聚集索引。

6.对表奖惩记录在属性列奖惩类型上建立非聚集索引。

7.对表请假记录在属性列‘请假天数’上建立非聚集索引,在属性列‘审批人编号’上建立非聚集索引。

(2)存储结构

确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。

将日志文件和数据库对象(表、索引等)分别放在不同的磁盘,可以改进系统的安全性,所以,系统应将日志文件和数据文件存放在不同的磁盘上。

五、数据库实施及应用程序

存储过程:

Createprocedure部门更新1

@dcountint,

@dnochar

(2)

As

Updatedepartment

SetDcount=@Dcount

WhereDno=@Dno

Createprocedure部门插入

@Dnochar

(2),

Dnamechar(10),

@Dcountint,

@Djianjiechar(40)

As

Insertintodepartmentvalues(@Dno,Dname,@Dcount,@Djianjie)

Createprocedure插入

@Enochar(10),

@Dnochar(10),

@Enamechar(20),

@Esexchar

(2),

@Ebirchar(20),

@Ezhiwuchar(10),

@Exuelichar(10),

@Etelchar(11),

@EIDchar(18)

As

Insertintodepartment

Values(@Eno,@Dno,@esex,@ebir,@ezhiwu,@exueli,@etel,@eid)

Createprocedure查询

@Enochar(10)

As

Select*fromemployee

WhereEno=@Eno

Createproceduregenxin

@bnochar(10),

@Enochar(10),

@Dnochar(10),

@Enamechar(20),

@Esexchar

(2),

@Ebirchar(20),

@Ezhiwuchar(10),

@Exuelichar(10),

@Etelchar(11),

@EIDchar(18)

As

Updateemployee

Set

Eno=@Eno,Dno=@Dno,Ename=@Ename,Esex=@Esex,Ebir=@Ebir,Ezhiwu=@Ezhiwu,Exueli=@Exueli,Etel=@Etel,EID=@EID

WhereEno=@bno

Createproceduregenxin3

@Enochar(10),

@Enamechar(20),

@datachar(10),

@jiaojichar(4),

@zhuanyechar(4)

@shentichar(4)

As

Updatekaohe

SetEno=@Eno,Ename=@Ename,data=@data,交际能力=@jiaoji,专业技能=@zhuanye,身体素质=@shenti

WhereEno=@Enoanddata=@data

Createprocedure管理员5

@Gnochar(10),

@passwordchar(10)

As

Updateguanliyuan

SetGpassword=@password

WhereGno=@Gnoandpassword=@password

Createprocedurekcharu

@enochar(10),

@enamechar(20),

@datachar(10),

@jineng1char(10),

@jineng2char(10),

@jineng3char(10),

As

Insertintokaohe

Values(@eno,@ename,@data,@jineng1,jinneng2,@jineng3)

Createproceduresuangongzi

@Enochar(10),

@datechar

(2),

@gongzitchar(5)output

As

Declare@gongziint,@money1int,@money2int,@chidaoint,@shijiaint,@bingjiaint,@gongzilint,@Jmoneyint,@Amoneyint

select@chidao=chidao,@bingjia=bingjia,@shijia=shijia,@gongzi1=gongzi,@Jmoney=Jmoney

Fromyuegongzi

WhereEno=@EnoandJyuefen=@date

If@chidao>3

Bengin

Set@money1=0

Set@money2=(@shijia+@bingjia)*50

Set@gongzi=@gongzil+@Jmoney+@Amoney-@money1-@money2

Set@gongzit=convert(varchar(5),@gongzi)

Print'钱'+@gongzit

Createproceduretianjia

@Dnochar(10),

@Dnamechar(20),

@Dcountint,

@jianjiechar(40)

As

Insertintodepartmentvalues(@Dno,@dname,@Dcount,@jianjie)

Createprocedureyuangong1

@Ynochar(10),

@passwordchar(10)

As

Updateyuangong

SetYpassword=@password

WhereYno=@Yno

Createprocedureyuangongalter

@Enochar(10),

@Enamechar(10),

@Esexchar

(2),

@Etelchar(11)

As

Updateemployee

SetEname=@Ename,Esex=@Esex,Etel=@Etel

WhereEno=@Eno

六.心得体会

这次的课程设计,在指导老师的悉心指导和帮助下,顺利地完成了数据库人事管理系统。

回顾这次课程设计,从刚开始的茫然,对数据库的认识非常有限,到后来能够独立应用sqlserver2005来编写sql代码以及完成系统的调试。

我感觉到自己的进步,当然这要感谢老师和同学的帮助。

当然,我离将设计做得很完美的程度,还是存在很大的差距。

当然,本次课程设计在很多地方需要完善,这需要我在将来的学习中,不断提高对自身的要求,及时掌握新的知识,多多参与编程实践,在实践中锻炼和提高自己的能力。

这个学期的课程设计,我有以下几点体会:

(1)课程设计的初期工作要准备好。

在设计数据库时,首先必须进行需求分析,了解到用户的需求,然后进行概念设计和逻辑设计,最后建数据库。

(2)要注重理论知识的学习以及实践。

在课程设计过程中,我发现自己对理论知识的学习还不够透彻。

(3)Sql代码的编写问题。

由于我对sql的了解度还不够,要实现有些功能的难度还是相当大的。

因此,在编写过程中,我会经常因为不知道如何编写sql代码实现某些功能而伤脑筋,所以只能通过上网查询以及向老师请教。

 

 

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

当前位置:首页 > 解决方案 > 解决方案

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

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