2024年5月28日发(作者:)
学校人力资源管理系统
第1章需求分析
1.1
需求调査
通过对各个用户的调查,该学校人力资源
管理系统有如下需求:
1)
家庭管理:实现学校教职工家庭信息管理 包
括父母,子女等信息。
2)
学历管理:实现学校教职工学历信息管理,
包括教职工从小学到大学的学校情况。
3)
基本信息:实现显示教职工基本信息及邮 箱
信息的记录。
4)
奖惩管理:实现在教职工奖惩情况记录。
5)
部门管理:包含最基本的部门名、部门总
人数信息。
第页共
30
页
1
1.2
系统功能分析
1)
家庭管理:用于记录和管理职工的父母子女
等亲属的名字。
2)
学历管理:用于记录教职工从小到大所在学
校的名称。
3)
个人基本管理:用于记录职工的姓名性别工 号
出生年月电子邮件职称号等信息。
4)
奖惩管理:用于记录职工奖惩情况。
5)
部门管理:对各部门和人数进行管理。
第页共
30
页
1
校人力资源管理系统
数据库原理及应用课程设计
学 号:
学生姓名:
指导教师:
提交时间:
设计报告
学校人力资源管理系统
131007203
20150105
目录
第1章需求分析 ...................................................... 0
1.1
需求调査 ......................................................................
0
1.2
系统功能分析 .................................................................
1
第2章 面向对象分析和设计 ........................................... 2
第3章 逻辑结构设计 ................................................. 3
3.1
局部
E-R
图 ...................................................................
3
3.2
类和对象向关系模式转换 ........................................................
4
第4章 数据库物理结构设计 ........................................... 5
4.1
存取方法设计 .................................................................
5
4.2
存储结构设计 .................................................................
5
4.3
物理设计 .....................................................................
6
第5章 数据库完整性设计 ............................................ 17
5.1
主键 .........................................................................
17
5.2
参照完整性设计 ...............................................................
17
5.3 Check
约束 ...................................................................
20
5.4
触发器设计 ...................................................................
20
第7章数据库存储过程设计 .......................................... 22
创建存删程 ......................................................................
22
总结 ............................................................... 23
参考文献: ......................................................... 24
学校人力资源管理系统
第1章需求分析
1.1
需求调查
通过对各个用户的调查,该学校人力资源
管理系统有如下需求:
1)
家庭管理:实现学校教职工家庭信息管理
包括父母,子女等信息。
2)
学历管理:实现学校教职工学历信息管理, 包
括教职工从小学到大学的学校情况。
3)
基本信息:实现显示教职工基本信息及邮 箱
信息的记录。
4)
奖惩管理:实现在教职工奖惩情况记录。
5)
部门管理:包含最基本的部门名、部门总 人数
信息。
1. 2
系统功能分析
第页共
33
页
0
1)
家庭管理:用于记录和管理职工的父母子女
等亲属的名字。
2)
学历管理:用于记录教职工从小到大所在学
校的名称。
3)
个人基本管理:用于记录职工的姓名性别工
号出生年月电子邮件职称号等信息。
4)
奖惩管理:用于记录职工奖惩情况。
5)
部门管理:对各部门和人数进行管理。
第页共
33
页
1
第2章 面向对象分析和设计
类和对象设计如下:
个人基本信息
家庭关系
姓名:
char
工号:
char
性别:
char
出生
工号:
char
姓名:
年份:
int
职称号:
char
电子邮件:
char
char
父母:
char
子
所属部门:
char
添加
0
删除()
査询
0
修改()
学历信息
姓名:
char
工号:
char
小学:
char
初中:
char
高中:
char
人学:
char
査询
0
添加
0
修改
0
删除
0
第
2
页共
33
页
女
1: char
子女
2
:
char
子女
添加
3
:
char
()
修改()
删除()
査询()
职称信息
职称名:
char
职称
号:
char
人数:
int
査询
0
添加
0
修改
0
删除0
第3章逻辑结构设计
3.1
局部
E-R
图
图
3-1
图
3-2
图
3-3
图
3-4
第页共
33
页
3
工号
3.2
类和对象向关系模式转换
个人基本信息(姓名、工号、性别、出生年 份、
电子邮件、职称号、所属部门)
职称(姓名、职称号、人数)
部门(人数、部门名)
家庭关系(工号、姓名、父、母、妻(夫)、
子女
1
、子女
2
、子女
3)
学历信息(姓名、工号、小学、初中、高中、 本
科、研究生、博士)
第页共
33
页
4
奖惩(姓名、工号、奖励、惩罚、日期)
第4章 数据库物理结构设计
4.1
存取方法设计
数据库系统是多用户共享的系统,对同一个 关系
要建立多条存储路径才能满足多用户的多 种应用要求。
对于教务管理系统来说,为了提高 某些属性(如:学生
学号,教职工号,课程号, 学生成绩,选课信息等)的
查询速度,可以选择 聚簇存取的方法,即把这些属性上
具有相同值的 元组集中放在连续的物理块上。这样在
查询某个 学院或是查询某个专业或某学年等的学生成
绩 或选课等时就会大大提高査询速度。因此,该系 统
中选择聚簇存取方法。
4.2
存储结构设计
教务管理系统是一个大型复杂的计算机网 络信息
系统,采用基于浏览器/服务器
(
B/S),
客户端/服务
器
(
C/S)
混合的应用体系结构来建 设教务管理系
统。数据库管理系统采用
Microsoft
公司推出的
SQL Server 2000
或 以上版
本,并用
SQL
进行数据库的建立和数 据库中数据的
维护和查询。
4. 3
物理设计
第页共
33
页
5
实现该设计的环境为
Windows XP Professional
+ MS SQL Server 2005
或以上版 本。
1
、建立学校人力资源管理系统数据库
create
database
学校人力资源管理系统
on
primary (
name=
学校人力资源管理系统,
filename=d:^
校人力资源管理学校人力资
源管理系统数据文
,
size=5, maxsize=10, filegrowth=l) log on (
name=
学校人力资源管理日志文件,
filename=*d:^
校人力资源管理学校人力资
源管理日志文件・
IdF
,
size=3, maxsize=10, filegrowth=l)
2
、建立个人基本信息表
USE
[学校人力资源管理系统]
GO
/****** object: Table [dbo].[
个人基本信息]
Script Date: 01/03/2015 20:32:39 ******/
SET ANSI_NULLS ON
GO
第页共
33
页
6
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[
个人基本信息]
[姓名]
[char](10) NULL,
[工号]
[char](10) NOT NULL,
[性别]
[char](10) NULL,
[出生年份]
[char](10) NULL,
[电子邮件
][char](50) NULL,
[职称号]
[char](10) NULL,
[所属部门]
[char](10) NULL,
CONSTRAINT [PK_
个人基本信息]
PRIMARY KEY CLUSTERED
(
[工号]
ASC
)WITH (PAD_INDEX = OFF
,
第
7
页共
33
页
(
STATISTICS_NORECOMPUTE
IGNORE_DUP_KEY
ALLOW_ROW_LOCKS
ALLOW_PAGE_LOCKS
[PRIMARY]
)ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
=
=
=OFF
,
OFF
,
= ON
,
ON) ON
ALTER TABLE [dbo].[
个人基本信息]
WITH
NOCHECK ADD CONSTRAINT [FK_
个人基本
信息一部门]
FOREIGN KEY
([所属部门])
REFERENCES [dbo].[
部门]([部门名])
GO
ALTER TABLE [dbo].[
个人基本信息]
NOCHECK CONSTRAINT [FK_
个人基本信 息
一部门]
GO
第页共
33
页
8
ALTER TABLE [dbo].[
个人基本信息]
WITH NOCHECK ADD CONSTRAINT [FK_
个人基本信息—职称
1] FOREIGN KEY
([职称
号])
REFERENCES [dbo].[
职称
1]
([职称
号])
GO
ALTER TABLE [dbo].[
个人基本信息]
NOCHECK CONSTRAINT [FK_
个人基本信
息_职称
1]
GO
3
、建立家庭关系表
USE
[学校人力资源管理系统]
GO
/****** Object: Table [dbo].[
家庭关系]
Script Date: 01/03/2015 20:30:35 ******/
SET ANSI_NULLS ON
GO
第页共
33
页
9
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[
家庭关系]( [工
号]
[char](10) NULL,
[姓名]
[char](10) NULL,
[妻(夫)
][char](10) NULL,
[父]
[char](10) NULL,
[母]
[char](10) NULL,
[子女
1] [char](10) NULL,
[子女
2] [char](10) NULL,
[子女
3] [char](10) NULL
)ON [PRIMARY]
GO
SET ANSI_PADDING OFF
第
10
页共
33
GO
ALTER TABLE [dbo].[
家庭关系]
WITH
CHECK ADD CONSTRAINT [FK_
家庭关 系
一个人基本信息]
FOREIGN KEY([
工号])
REFERENCES [dbo].[
个人基本信息]([工
号])
GO
ALTER TABLE [dbo].[
家庭关系]
CHECK
CONSTRAINT [FK_
家庭关系—个人基本信 息]
GO
4
、
建立学历信息表
USE
[学校人力资源管理系统]
GO
/****** Object: Table [dbo].[
学历信息]
Script Date: 01/03/2015 20:28:28 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
第
11
页共
33
CREATE TABLE [dbo].[
学历信息]( [工号]
[char](10) NULL,
[姓名]
[char](10) NULL,
[小学]
[nchar](20) NULL,
[初中]
[nchar](20) NULL,
[高中]
[nchar](20) NULL,
[本科]
[nchar](20) NULL,
[研究生]
[nchar](20) NULL,
[博士]
[nchar](20) NULL )ON
[PRIMARY]
GO
SET ANSI_PADDING OFF
GO
ALTER TABLE [dbo].[
学历信息]
WITH
NOCHECK ADD CONSTRAINT [FK_
学历 信息
一个人基本信息]
FOREIGN KEY
([工号])
REFERENCES [dbo].[
个人基本信息]([工
号])
GO
ALTER TABLE [dbo].[
学历信息]
CHECK
CONSTRAINT [FK_
学历信息—个人基本信 息]
12
页共
33
第
5
、
GO
建立奖惩信息表
USE
[学校人力资源管理系统]
GO
/****** Object:
ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[
奖惩]( [姓名]
[char](10)
NULL,
[工号]
[chaF](10) NULL,
[奖励]
[nchar](50)
NULL,
[惩罚]
[nchar](50) NULL,
[日期]
[nchar](10)
NULL
)ON [PRIMARY]
GO
SET ANSI_PADDING OFF
Table [dbo].[
奖惩]
Script Date: 01/03/2015 20:27:38 ******/ SET
第
13
页共
33
GO
ALTER TABLE [dbo].[
奖惩]
WITH
NOCHECK ADD CONSTRAINT [FK_
奖惩 —个
人基本信息]
FOREIGN KEY([
工号])
REFERENCES [dbo].[
个人基本信息]([工
号])
GO
ALTER TABLE [dbo].[
奖惩
]CHECK
CONSTRAINT [FK_
奖惩—个人基本信息]
GO
6
、
建立职称信息表
SET ANSI_NULLS ON
GO
USE
[学校人力资源管理系统]
GO /****** object: Table [dbo].[
职称
1]
Script Date: 01/03/2015 20:24:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
第
14
页共
33
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[
职称
1](
[职称
号]
[char](10) NOT NULL,
[职称名]
[char](10)
NULL,
[人数]
[char](10) NULL,
CONSTRAINT [PK_
职称
1] PRIMARY KEY
CLUSTERED
(
[职称号]
ASC
)WITH (PAD_INDEX = OFF
,
STATISTICS_NORECOMPUTE = OFF,
IGNORE_DUP_KEY = OFF
,
ALLOW_ROW_LOCKS = ON,
ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
)ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
7
、建立部门表
USE
[学校人力资源管理系统]
第
15
页共
33
GO
/****** Object: Table [dbo].[
部门]
Script Date: 01/03/2015 20:25:29 ******/
SET ANSI NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI PADDING ON
GO
CREATE TABLE [dbo].[
部门](
[部门名]
[char](10) NOT NULL,
[人数]
[int] NULL,
CONSTRAINT [PK_
部门]
PRIMARY KEY
CLUSTERED
[部门名]
ASC
)WITH (PAD_INDEX
= OFF,
第
16
页共
33
STATISTICS_NORECOMPUTE
IGNORE_DUP_KEY
ALLOW_ROW_LOCKS
ALLOW_PAGE_LOCKS
[PRIMARY]
)ON [PRIMARY]
GO
SET ANSI_PADDING OFF
第5章 数据库完整性设计
5.1
主键
=OFF
,
OFF
,
= ON
,
ON) ON
=
=
表名
个人基本信息 信
息
部门
家庭关系
奖惩
学历信息
职称
5.2
主键
(工号)
(部门名)
(工号)
(工号)
(工号)
(职称号)
参照完整性设计
1
、个人基本信息表中把职称号和所属部门设为 外键
ALTER TABLE [dbo].[
个人基本信息]
WITH
第
17
页共
33
NOCHECK ADD CONSTRAINT [FK_
个人基本
信息_ 部门]
FOREIGN KEY
([所属部门])
REFERENCES [dbo]
・
[
部门]([部门名])
GO
ALTER TABLE [dbo].
[个人基本信息]
N0CHECK CONSTRAINT [FK_
个人基本信息_部
门]
GO
ALTER TABLE [dbo].[
个人基本信息]
WITH
NOCHECK ADD CONSTRAINT [FK_
个人基本
信息_ 职称
1] FOREIGN KEY
(
[
职称号])
REFERENCES [dbo]
・
[
职称
1]
([职称
号])
GO
ALTER TABLE [dbo].
[个人基本信息]
NOCHECK
CONSTRAINT [FK_
个人基本信息—职称
1]
GO
2
、家庭关系中工号设计为外键
ALTER TABLE [dbo].
[家庭关系]
WITH
CHECK ADD CONSTRAINT [FK_
家庭关系—个
第
18
页共
33
人基本信息]
FOREIGN KEY
([工号])
REFERENCES [dbo]
・
[
个人基本信息]([工
号])
GO
ALTER TABLE [dbo]
•[家 庭 关系]
CHECK
CONSTRAINT [FK_
家庭关系一个人基本信息]
GO 3
、奖惩表中工号为外键
ALTER TABLE [dbo].
[家庭关系]
WITH CHECK
ADD CONSTRAINT [FK_
家庭关系—个人基本信
息]
FOREIGN KEY
([工号])
REFERENCES [dbo].[
个人基本信息]([工
号])
GO
ALTER TABLE [dbo].
[家庭关系]
CHECK
CONSTRAINT [FK_
家庭关系—个人基本信息]
GO
4
、学历信息中工号设计为外键
ALTER TABLE [dbo].
[学历信息]
WITH
NOCHECK
ADD CONSTRAINT [FK_
学历信息—个人基本信
息]
FOREIGN KEY
([工号])
第
19
页共
33
REFERENCES [dbo]
・
[
个人基本信息]([工
号])
GO
ALTER TABLE [dbo].
[学历信息]
CHECK
CONSTRAINT [FK_
学历信息_个人基本信息]
GO
5.3 Check
约束
1
、个人基本信息表中将性别进行
check
约束:
(性别
in
('男','女'))
5.4
触发器设计
1
、在个人信息表中建立删除职工信息触发器
USE
[学校人力资源管理系统]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE trigger [dbo].
[人数减少]
on [dbo].
[个人基本信息]
for delete
AS
begin
第
20
页共
33
check
declare @a char(50
)
select @a=deleted.
所属部门
from deleted
update
部门
set
部门.人数二部门.人数
-1
where
二部门•部门名
end
GO 2
、在个人信息表中建立增加教职工触发器
USE
[学校人力资源管理系统]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create trigger [dbo].
[人数增加]
on [dbo].
[个人基本
信息]
for insert
AS
begin
declare @a char(50
)
select @a=inserted.
所属部门
from inserted
update
部门
第
21
页共
33
set
部门.人数二部门.人数
+1 where
@沪部门•部
门名+
—left(@a, 3
)
=
班级•班级号
end
GO
第7章数据库存储过程设计
创建存储过程
1.
査询学校各部门各种职称的教职工数量
USE
[学校人力资源管理系统]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE procedure [dbo].
[查询部门人数]
@a char
(
50)
as
select
部门名,人数
from
部门
where
部门•部门名二
@a
第
22
页共
33
GO
第
23
页共
33
总结
理论联系实际才能做好一件事,学习一门课 程同
样是这样。通过
16
学时的数据库课程设计 实习,受
益匪浅,从中学到了许多新知识,这些 知识是在课堂
中不能学到或者说很难学到的。并 且对大型数据库设
计这一门课程有了更深一步 的理解。在做课程设计
中,可以把课堂上所学的 理论知识和实践联系起来,
在所要开发的系统中 渐渐学会了融会贯通。同样通过
对
SQLServer
的 应用,也使我们熟练和巩固了对
SQL
的理解。 这次课程设计,完成课题是《教务管理
系 统》,在学校人力资源管理系统的开发中釆用了
完整的数据库设计的全过程,从需求分析到概念 结构
设计,到逻辑结构设计,最后到数据库的实 施和维
护,每一步都认真的分析和实施。当然, 在本次课程
设计的成果中还存在许多的不足之 处,这就需要我们
学习更多的知识,进行更深研 究。
当然了,在建表过程中一开始没有用代码来
实现,所以在构建数据库关系图的时候出现了不 少的
问题导致
6
张表重新建了好几次,不过最后
第
23
页共
33
页
仍然做了出来,收或还是蛮大的。
在这次实习中,我们完全投入到了开发系统
的世界里。结束后明白了理论和实践要想充分地 结
合,需要非常扎实的基本功。这就说明学好基 础知识
是理论付诸实践的前提。在开发教务管理 系统中我学
到了很多,希望在以后能充分利用实 习的机会充实自
己,用所学的理论知识充分去实 践,在实践中又要努
力去巩固理论知识。只有这 样,才能把一门课程甚至
一门学科学精、学透。
参考文献:
1.
王珊,萨师煩•数据库系统概论
[M]
・
高等教育
出版社,
2006
2.
郑阿奇等.
SQLServer
实用教程(第
3
版)
[M].
电
子工业出版社,
2009
3
•赵乃真等.信息系统设计与应用・清华大学出
版社,
2005
第
24
页共
33
页
《数据库 原理
及应
选题合理,功能简单
(D
)
第
25
页共
33
页
有一定的工作量和实用
功
)
能设计丰富,有一定的难度
价值
(C
系数
(B
)
功能设计合理全面,能体现数据库的存储和整理数据 的功能
(A
)
具备基本的数据表,数据量较少,但能够实现系统基 本需要
(D
)
具备基本的数据表,数据量适中,实现了一定的数据 完整性
数据表和 数据
(C
)
量
有多个数据表,数据量适中,有完善的数据完整性
(B)
有多个数据表,数据量充足,具有较强的数据安全性 和数据
完整性
(A
具备基本的数据表,有主外键约束
(D
)
创建了若干种的数据库对象,并加以利用
(C
数据库对 象
在实际应用中合理利用
)
了各类数据库对象
(B
)
具有身份验证、数据备份等较复杂的数据管理功能
(A)
利用存储过程实现了各种査询功能
(D
)
功能实现
除査询功能,还实现了各种数据操作功能
(C)
在上--条基础上,还实现了数据统计汇总功能
(B)
合理利用函数、存储过程、触发器实现各种数据査询、 操作、
管理功能
(A)
完成设计报告,阐述了系统功能,结构较完整
(D
开题报告反映设计思路,结构完整,格式较规范
(C)
)
设计报告
报告内容完整,图表使用准确,格式清晰,功能描述 详尽
(B
)
报告内容完整,图表使用准确,描述详细,代码阐述 清楚,
反映系统执行流程
教师签字:
(A)
总评成绩:
第
26
页共
33
页
发布评论