数据库原理课程设计报告.docx
《数据库原理课程设计报告.docx》由会员分享,可在线阅读,更多相关《数据库原理课程设计报告.docx(36页珍藏版)》请在冰豆网上搜索。
数据库原理课程设计报告
数据库原理课程设计报告
设计题目学校人力资源管理系统
专业班级电信091班
学号08060309104
学生姓名魏邵平
同组人赵传东
起止日期2011年06月26日至07月04日
信息工程系
摘要
本系统是一个典型的学校人力资源管理系统,主要完成对学校员工基本信息、学校职工信息、奖惩信息等多种信息的管理,包括数据库中表的录入、修改、删除、权限等。
系统还可以完成对各类信息的查询、录入、修改、删除等功能,针对本学期的数据库课程设计,针对题目“学校人力资源管理系统”的设计与研究,我们对系统的设计,先对单个模块进行设计,经过修改和调整,在进行总体的设计与研究,已达到各项功能和基本要求。
本次数据库课程设计之学校人力资源管理系统,其内容如下:
1.实现学校部门信息、职务、职称和教职工信息管理;
2..实现教师的奖惩信息管理;
3.创建视图查询学校各部门各种职称的教职工数量;
4.创建一个触发器
5.建立数据库相关表之间的参照完整性约束。
6.实现对员工培训及培训课程等相关信息进行查询与访问。
7.实现对员工进行考核、年度考核、教学工作情况的登记,修改,以及访问。
8.实现对用户权限管理(包括:
部门设置,岗位设置,职称设置,职务设置,培训课程设置,聘用类型设置,人才类型设置,基本信息设置,人员变动,聘期调整,人才类型,工资信息,员工奖惩,考勤管理,建新月份工资,用户管理,口令设置,数据初始化,操作员管理,密码设置,用户名,用户密码)。
本系统实在WindowXP系统的环境下开发的,采用MicrosoftSQLServer2000
数据库管理系统
目录
1.问题描述-1-
1.1背景-1-
2.需求分析-1-
2.1需求分析-1-
2.2数据流图-4-
3.概念结构设计-9-
3.1E-R图-9-
4.逻辑结构设计-13-
5.物理结构设计-21-
7.数据库的实施和维护-22-
8.结束语-23-
9.答辩与成绩考核24
1.问题描述
1.1背景
信息社会的日益发达,新的观念不断被人们接受,从强调对物的管理转向对人的管理,是管理的一个划时代的进步。
如何真正挖掘蕴藏在员工当中的巨大能力,信息化管理成为摆在每一个管理者面前的选择。
基于现代人力资源的理念,将现代化的信息技术和网络技术引入人力资源管理工作,实施人力资源管理信息系统,已成为各行各业管理发展与进步的必由之路。
学校人力资源管理是在人力资源的取得、开发、保持和使用等方面所进行的计划、组织、激励和控制的活动。
它通过人力资源的招聘、选拔、录用、考核、评价、提升、培训、激励等环节,以充分开发人力资源,和潜力,调动人的积极性,提高工作效率,实现学校目标的理论、思路、方法和技术。
学校人力资源管理的基本任务是根据学校发展的要求,通过有计划地对人力资源进行合理配置,激发员工的积极性,进而推动整个学校各项工作的开展,以确保学校战略目标的实现。
依托人力资源管理系统的建设,可以有效保证各种资料信息的获取、处理、传送过程中的准确、高效、安全和畅通,为现代人力资源管理提供新的手段,提高工作效率,并最终推动学校人力资源管理的进步和发展。
2.需求分析
2.1需求分析
一.系统需求分析
通过调查对用户的信息要求,处理要求,完整性与安全性需求的了解,根据具体的数据库管理系统,开发令用户满意的学校人力资源管理系统。
调查的重点是“数据”和“处理”,通过调查,收集与分析,获得要求如下:
(1)信息要求:
对学校进行实际的调查,了解当前的组织机构,管理模式,和具体的流程。
以便用户从数据库中获得信息的内容与数据。
(2)处理要求:
明确人力资源管理系统的目标与功能,以及处理方式。
(3)安全性与完整性要求:
防止数据库中存在不符合的数据进入数据库,以及非法用户和非法操作数据库。
一.需求分析阶段的任务
1.用户需求分析
(1)人力资源浏览需求:
当用户进入系统时,在主页面中分类显示信息,以供用户选择,同时可根据分类找到所需信息,也可以浏览其详细信息。
(2)人力资源修改需求:
人力资源管理模块能够自由增加,修改,删除。
(3)人力资源修复需求:
建立数据库备份机制,并能够提供数据灾难恢复功能。
(4)人力资源搜索需求:
当用户知道某个或部分信息时,可以通过搜索功能快速找到所需要的数据资料。
2.管理员需求分析
(1)部门管理:
处理部门的新建,合并,撤销,提供部门信息维护统计分析功能,支持输出组织机构图。
(2)编制管理:
主要管理人力资源规划和机构编制,并提供人力资源规划表,机构编制表。
(3)岗位管理:
主要管理职务分析后每个岗位的岗位描述,岗位条件,后备人员,岗位任职情况,超编情况,空缺情况,并按照部门提供岗位表和空缺岗位表,及时进行调整。
(4)人事管理:
负责对在职员工,解聘员工,离退员工的基本信息,任职情况,组织变动情况,奖惩情况等档案数据的维护统计分析,晋升,辞职,降职,辞退,退休等人事变动业务的处理,提供各类员工的信息报表。
(5)聘用管理:
全面管理员工聘用合同,劳动合同的签订,变更,终止,解除这一过程,并针对不同的的合同版本,提供版本管理以及对于到期合同提供自动提示。
(6)考勤管理:
作为员工出勤的也有效方法,支持手工考勤,系统根据事先设置项目,班别,工作日历,考勤规则等,对员工的出勤,休假,加班进行处理生成清晰的员工出勤报表,并可转入薪资管理中,使考勤数据与工资计算直接挂钩。
(7)工资管理:
提供对员工薪资标准的设定,员工工资定级,工资调整的审批,工资核算发放。
自动计算社会保险等代扣代缴项目,可根据学校制度设置并计算事假,病假,婚假,丧假等带薪假期以及迟到,早退,旷工等形成的薪资扣减,还能存储完整的历史信息供查询和生成列表。
(8)福利管理:
主要提供员工的各项福利基金的提取和管理功能,包括定义基金类型,设置基金提取条件,日常管理,并提取相应的统计分析。
三.系统功能分析
根据上面的需求分析,学校人力资源管理系统从管理员角度对功能模块加以描述。
具体功能描述如下:
1.部门管理:
实现对部门信息表的录入、修改、删除操作。
2.岗位类型管理:
实现对岗位信息表的的录入、修改、删除操作。
3.职务类型管理:
实现对职务类型表的录入、修改、删除操作。
4.职称类型管理:
实现对职称类型的录入、修改、删除操作。
5.培训课程管理:
实现对培训课程信息表的录入、修改、查询、删除操作。
6.聘用类型管理:
实现对聘用类型信息表的录入、修改、查询、删除操作。
7.人事管理:
人事管理包括对员工信息表、员工单位内变动表两个表的录入、修改、查询、删除操作。
8.年度考核:
实现对年度考核表的录入、修改、查询、删除操作。
9.培训管理:
实现对培训信息表的录入、修改、查询、删除操作。
10.聘期调整管理:
实现对聘用信息表的录入、修改、查询、删除操作。
11.人才信息管理:
实现对人才信息表的录入、修改、查询、删除操作。
12.工资管理:
实现对工资信息表的录入、修改、查询、删除操作。
13.保险管理:
实现对保险信息表的录入、修改、查询、删除操作。
14.奖惩管理:
实现对员工奖惩信息表的录入、修改、查询、删除操作。
15.考勤管理:
实现对考勤表的录入、修改、查询、删除操作。
16.新月份工资管理:
实现建立工资月份的操作,对工资信息表的月份进行更新操作。
17.用户管理:
实现对用户权限表的录入、修改、删除操作。
18.口令设置管理:
实现对用户权限表的口令字段录入、修改、删除操作。
19.初始化数据管理:
实现对系统的各种数据表记录的初始化操作。
20.使用者的权限:
根据学校员工岗位类别不同,设置不同类型的用户,用户有不同的权限。
超级用户有所有项的操作权限。
四.安全性和完整性要求
1.安全性要求
系统安全性要求体现了数据库安全性,信息安全性和系统平台的安全性等方面,安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性。
再通过分配权限。
设置权限级别来区分对待不同操作者对数据库的操作,以提高数据库的安全性。
2.完整性要求
系统完整性要求系统中数据的正确性以及相容性。
可通过建立主,外键,使用check约束,或者通过使用触发器和级联更新。
图2-1系统的功能模块图
2.2数据流图
系统顶层数据流图
图2-2系统顶层数据流图
系统中间层数据流图,这里以高级用户为例,数据流图如图2-3
图2-3系统中间层数据流图
各个功能的数据流图如下.
1.系统设置功能模块数据流图如图所示2-4
2-4人事管理功能模块数据流图
2.3数据字典如图2-5所示人事管理功能模块数据流图
图2-5人事管理功能模块数据流图
3.工资管理功能模块数据流图,如图2-6
图2-6.工资管理功能模块数据流图
4.系统管理功能模块数据流图,如图2-7
图2-7系统管理功能模块数据流图
2.3数据字典
数据字典是描述和定义数据流图中所有数据的集合,是有关资料的信息的收集、维护和发布的机制。
阻1在结构化分析中,数据字典是对数据流图上的每一个成分给以定义与说明。
在系统分析中,数据字典起着重要的作用。
1.数据元素
表2-1员工编号数据
名称
员工编号
别名
无
存储处
员工信息,工资信息,保险信息,聘用信息
类型及宽度
字符型/5
取值范围
00001-99999
表2-2姓名数据元素
名称
姓名
别名
无
存储处
员工信息,工资信息,保险信息,聘用信息
类型及宽度
字符型/20
取值范围
任意字符
2.数据流
2-3员工信息数据流
名称
员工信息
来源
人事部门
去向
员工信息库
数据流
某员工的人事信息
数据流结构组成
员工信息={员工编号+姓名+性别+政治面貌+文化程度+婚姻状况+联系电话+联系地址+备注}
表2-4考勤信息数据流
名称
考勤信息
来源
人事部门
去向
考勤信息库
数据流
每个员工的考勤记载
数据流结构组成
考勤信息={所属工资月份+员工编号+姓名+出勤天数+请假天数+迟到或早退次数+矿工天数}
3.存储数据
表2-5聘用信息数据存储
名称
聘用信息
存储组织
每个员工一条记录
记录数
约2000个
记录组成
{员工编号+姓名+聘用编号+聘用类型+聘用期限+备注}
近似长度
{5+20+20+40+40+50}
表2-6考核信息数据存储
名称
聘用信息
存储组织
每个员工一条记录
记录数
约2000个
记录组成
{员工编号+姓名+考核年度+教学情况+考核等级+备注}
近似长度
{5+20+20+40+40+50}
3.数据加工
表2-7工资信息数据加工
条目名称
工资信息
数据加工
每位员工的工资由应发工资,应扣工资,实发工资加工得到
应发工资
岗位工资+薪级工资+10%提高部分+职务补贴+岗位应发工资津贴+班主任津贴+其他津贴+出勤奖+学年奖+奖励金额+节日补助
应扣工资
扣发金额+养老保险+失业保险+医疗保险+工伤保险+生育保险+住房公积金
记录数
约50000个
实发工资
=应发工资一应扣工资
3.概念结构设计
3.1E-R图
图3-1实体和实体之间关系E-R图
3.2实体及属性的定义
3.2.1类别实体E-R图:
1.工资实体属性E-R图
图3-2工资实体属性E-R图
2.保险实体属性E-R图
图3-3-保险实体属性E-R图
3.考核实体属性E-R图
图3-4考核实体属性E-R图
4.考勤实体属性E-R图
图3-5考勤实体属性E-R图
5.培训课程实体属性E-R图
图3-6培训课程实体属性E-R图
6.聘用实体属性E-R图
图3-7聘用实体属性E-R图
7.人才类型实体属性E-R图
图3-8人才类型实体属性E-R图
8.人才信息实体属性E-R图
图3-9人才信息实体属性E-R图
9.人员变动实体属性E-R图
图3-10人员变动实体属性E-R图
10.员工实体属性E-R图
4.逻辑结构设计
逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E—R图转换为与选用DBMS(DataBaseManagementSystem)产品所支持的数据模型相符合的逻辑结构。
嘲根据上述的概念设计,与人力资源管理系统数据库对应的表有11个,下面给出表的逻辑结构的描述,只列出部分属性说明。
员工(员工编号,姓名,照片,职称,数量)
培训(员工编号,姓名,课程名称,培训时间,成绩)
培训课程(课程编号,课程名称,培训单位,授课方式,授课时数)
员工单位内部变动(员工编号,原岗位,现岗位,变动时间)
工资(工资月份,员工编号,岗位工资,应发工资,实发工资)
考核(员工编号,考核年度,教学工作情况,考核等级)
考勤(员工编号,姓名,工资月份,出勤天数,加班天数,迟到早退次数)
聘用(聘用编号,姓名,聘用类型,聘用期,聘用期工资)
保险(员工编号,医疗保险,养老保险,失业保险)
人才(员工编号,姓名,人才级别,人才类型)
表4-1员工信息表
数据项目名称
数据类型
数据宽度
是否可空
员工编号
字符型
5
否
姓名
字符型
20
是
照片
图像型
是
数量
整型
是
职称
字符型
20
是
表4-2培训信息表
数据项目名称
数据类型
数据宽度
是否可空
员工编号
字符型
5
否
姓名
字符型
20
是
课程名称
字符型
30
是
培训时间
日期型
是
成绩
整型
是
表4-3培训课程信息表
数据项目名
数据类型
数据宽度
是否可空
课程编号
字符型
10
否
课程名称
字符型
30
是
培训单位
字符型
50
是
授课方式
字符型
50
是
授课时数
整型
4
是
表4-4员工单位内部变动表
数据项目名
数据类型
数据宽度
是否可空
员工编号
字符型
5
否
原岗位
字符型
20
是
现岗位
字符型
20
是
变动时间
日期型
20
是
授课时数
整型
4
是
表4-5工资信息表
数据项目名
数据类型
数据宽度
是否可空
工资月份
字符型
15
否
员工编号
字符型
5
否
岗位工资
货币型
8
是
应发工资
货币型
8
是
实发工资
货币型
8
是
表4-6考核表
数据项名称
数据类型
数据宽度
是否可定
员工编号
字符型
5
否
考核年度
字符型
4
是
教学工作情况
字符型
50
是
考核等级
字符型
10
是
表4-7考勤表
数据项名称
数据类型
数据宽度
是否可定
员工编号
字符型
5
否
姓名
字符型
20
是
工资月份
字符型
15
否
出勤天数
整型
9
是
加班天数
整型
9
是
迟到早退次数
整型
9
是
表4-8聘用信息表
数据项名称
数据类型
数据宽度
是否可定
聘用编号
字符型
20
否
姓名
字符型
20
是
聘用类型
字符型
50
是
聘用期
字符型
20
是
聘用期工资
整型
20
是
表4-9保险信息表
数据项名称
数据类型
数据宽度
是否可定
员工编号
字符型
15
否
医疗保险
货币型
8
是
养老保险
货币型
8
是
失业保险
货币型
8
是
表4-10人才信息表
数据项名称
数据类型
数据宽度
是否可定
员工编号
字符型
5
否
姓名
字符型
20
是
人才级别
字符型
20
是
人才类型
字符型
50
是
1.数据库表
在完成系统的ER图之后,需要将ER模型转化为关系模型,也就是说,要设计出数据库所需要的表格。
这里选用的是关系数据库。
因为关系数据库中的二维表格可以很清楚地描述数据之间的联系。
2.员工信息表
员工信息表即是该数据库的主表,也是系统各主要功能模块的主要联结的数据表。
通过对学校的调查,在管理员工时,对员工的一些基本情况要有一定的了解,比如民族、出生日期、所属部门等信息,所以首先设计了员工信息表。
在该表中员工编号是主键,它按员工进入学校的先后次序来编写,每当有新人调入,系统自动给出员工编号,这样我们按员工编号来查找员工是比较方便的。
员工信息表的结构如表3.12所示。
表4-12员工信息表的结构
字段名
数据类型
长度
是否允许为空
员工编号(K)
Varchar
5
否
姓名
Varchar
20
否
性别
Varchar
2
是
民族
Varchar
20
是
出生日期
Datctime
8
是
籍贯
varchar
50
是
家庭住址
Varchar
50
是
政治面貌
Varchar
10
是
入党团时间
Datetime
8
是
婚姻状况
Varchar
4
是
身份证号码
Varchar
20
是
办公电话
Varchar
20
是
移动电话
Varchar
30
是
文化程度
Varchar
10
是
毕业院校
Varchar
50
是
专业
Varchar
50
是
毕业时间
Datetime
8
是
参加工作时间
Datetime
8
是
总工龄
Int
4
是
所属部门
Varchar
200
是
岗位类别
Varchar
20
是
职务
Varchar
20
是
职称
Varchar
20
是
岗位工资
Money
8
是
薪级工资
Money
8
是
调入本单位时间
Datetime
8
是
调出本单位时间
Datetime
8
是
本单位工龄
Int
4
是
简历
Varchar
600
是
照片
Image
16
是
电子档案号
Varchar
20
是
工作证号
Varchar
20
是
当前状态
Varchar
20
是
登记人
Varchar
20
是
登记时间
Datetime
8
是
数量
int
10
是
2.人才信息表
表4-13人才信息表的结构
字段名
数据类型
长度
是否允许为空
员工编号(#)
Varchar
5
否
姓名
Varchar
20
否
人才级别
Varchar
20
否
人才类型(#)
Varchar
50
否
评定时间
Datetime
8
是
评定单位
Varchar
50
是
人才任期
Varchar
20
是
事迹简介
Varchar
1000
是
4.工资信息表
表4-15工资信息表
字段名
数据类型
长度
是否允许为空
ID(K)
Bigint
8
否
工资月份
Varchar
10
是
员工编号(#)
Vaichar
5
否
姓名
Varchar
20
是
岗位工资
Money
8
是
薪级工资
Money
8
是
[10%提高部分]
Money
8
是
职务补贴
Money
8
是
岗位津贴
Money
8
是
班主任津贴
Money
8
是
出勤奖
Money
8
是
节日补助
Money
8
是
学年奖
Money
8
是
其他津贴
Money
8
是
住房公积金
Money
8
是
养老保险
Money
8
是
医疗保险
Money
8
是
失业保险
Money
8
是
生育保险
Money
8
是
工伤保险
Money
8
是
奖励金额
Money
8
是
扣发金额
Money
8
是
应发工资
Money
8
是
应扣工资
Money
8
是
实发工资
Money
8
是
5.保险信息表
表4-16保险信息表的结构
字段名
数据类型
长度
是否允许为空
员工编号(#)
Varchar
5
否
姓名
Varchar
20
否
养老保险
Money
8
是
失业保险
Money
8
是
医疗保险
Money
8
是
生育保险
Money
8
是
工伤保险
Money
8
是
住房公积金
Money
8
是
6.员工单位内变动表
4-17员工单位内变动表
字段名
数据类型
长度
是否允许为空
员工编号(#)
varchar
5
否
姓名
varchar
20
否
原部门
varchar
100
是
原岗位
varchar
100
是
原职务
varchar
50
是
原职称
varchar
50
是
现部门
varchar
100
是
现岗位
varchar
100
是
现职务
varchar
50
是
现职称
varchar
50
是
变动时间
datetime
8
是
登记人
varchar
20
是
7.培训信息表
表4-18培训信息表
字段名
数据类型
长度
是否允许为空
员工编号(#)
Varchar
5
否
姓名
Varchar
20
否
课程名称
Varchar
30
是
开始时间
Datetime
8
是
结束时间
Datetime
8
是
成绩
Int
9
是
备注
Varchar
50
是
8.培训课程信息表
表4-19培训课程信息表
字段名
数据类型
长度
是否允许为空
课程编号(K)
varchar
10
否
课程名称
varchar
30
否
培训类型
varchar
20
否
培训单位
varchar
50
是
授课对象
varchar
50
是
授课方式
varchar
50
是
授课时数
Int
4
是
开始时间
datetime
8
是
结束时间
datetime
8
是
9.奖惩信息表
表4-20奖惩信息表
字段名
数据类型
长度
是否允许为空
ID(K)
Bigint
8
否
奖惩项目
Varchar
20
是
惩罚项目
Varchar
20
是
10.岗位信息表
表4-21岗位信息表
字段名
数据类型
长度
是