2024年2月22日发(作者:)
数据库原理课程设计
班级:
姓名:
学号:
1.问题的描述
课程设计题目:职业介绍信息管理系统
具体要求:
实现职业分类、职业信息管理(职业号、职业类型号、用人单位、需求人数、已聘人数、备注);
实现用人单位、求职者信息管理,求职者信息设有聘用标志,默认值为未聘用;
实现求职者和职业匹配管理(职业号、求职人员编号);
实现费用管理,包括用人单位交费情况、求职人员交费情况;
创建触发器,求职成功时,自动修改相应职业的已聘人数和相应职工的聘用标志为‘聘用成功’;另外如果相应职业的已聘人数不得超过需求人数;
创建存储过程查询各种职业的需求数和已聘用数;
创建规则限制求职者的性别,必须为‘男’或‘女’;
建立表间关系。
2.需求分析
需求分析
需求分析的任务是通过调查详细了解现实世界中职业信息管理系统要处理的对象,充分了解原系统工作概况明确用户的需求,然后在此基础上确定新系统的功能。确定系统必须完成哪些工作,也就是对系统提出完整、准确。清晰,具体的要求。需求分析的结果是系统
开发的基础。经调查资料发现,职业介绍管理系统应具备的职能有:求职者和用人单位的基本信息、收费信息,介绍人员信息登记,求职者与与用人单位可以发布求职招聘信息,并进行相关信息的匹配。另外,求职者和用人单位都需根据不同的职业类型像介绍人员缴纳一定的介绍费。
系统功能模块图
职业介绍信息管理系统
用人单位求职者管介绍人员
费用管理
职业信息
职业分类
注册信招聘职注册信
求职
匹配信单位交求职者
职业介绍信息管理系统功能模块图
结构流程图
开始
注册用人单位信息
N
介绍人确认
Y
招聘
N
是否成功
Y
缴纳费用
结束
用人单位流程图
开始
管理发布信息
用人单位与求职者Y
收取费用
结束
介绍人员流程图
开始
注册个人信息
浏览招聘信息
应聘
N
是否应聘成功
Y
缴纳费用
结束
求职者流程图
3逻辑结构设计
局部E-R图
职业分类
职业类型号 职业类型名 介绍人员编号
职业分类E_R图
用人单位
单位编号 单位名称 职业类型号
职业信息
用人单位E_R图
职业号
工资
职业名称
需求人数
单位编号
已聘人数
职业类型号 专业要求
职业信息E_R图
求职者信息
求职者编号
工资要求
姓名
是否聘用
性别 攻读专业
求职者信息E_R图
介绍人员
介绍人员编号 姓名 电话
介绍人员E_R图
费用管理
职业类型号
单位缴费
费用信息E_R图
全局E-R图
根据表格绘制E-R图如下:
求职者缴费
职业名
单位名称
单位编号
职业类型号
职业号
专业要求
职业类型号
介绍人职业分类
1
属于
n
用人单位
1
1
发布
n
职业信息
需求人数
工资
单位编号职业类型号
职业类型名
交费
数量
m
已聘人数
匹
1
求职者交费
求职者编号
姓名
性别
1
攻读专业
介绍人员编收费
1
介绍人员
费用信息
n
1
交费
1
求职者信息
单位交费
是否聘用
月薪要求
职业类型号
电话
姓名
数据字典
数据的基本存取单位是存储记录。有了逻辑结构以后,就可以设计存储记录结构,一个存储记录可以与多个逻辑记录相对应。存储记录就包括记录的组成,数据项的类型,长度及其他约束条件。
经分析可知其对应的关系模式:
1 职业分类(职业类型号、职业类型名,介绍人员编号)
2 用人单位(单位编号、单位名称、职业类型号)
3 职业信息(职业号、职业名称、单位编号、职业类型号、专业、已聘人数、需求人数、工资)
4 介绍人员表(介绍人员编号、姓名、电话)
5 求职者信息(求职者编号、姓名、性别、专业、是否聘用、月薪要求)
6 费用管理信息(职业类型号,单位交费,求职者交费)
涉及的表如下:
1 职业分类表(职业类型号和介绍人员编号为主键)
名称
职业类型号
数据类型
Int
约束条件
无
是否为空
否
是
是
备注
无
无
无
职业类型名 Char(10) 无
介绍人编号
Int
无
2 用人单位表(单位编号和职业类型号为主键)
名称
单位编号
单位名称
数据类型
Int
约束条件
无
是否为空
否
是
否
备注
无
无
无
Char(10) 无
无 职业类型号
Int
3职业信息表(职业号,职业类型号和单位编号为主键)
名称 数据类型 约束条件 是否为空 备注
职业号
职业名称
单位编号
Int
无 否
是
是
是
无
无
无
无
Char(10) 无
Int
无
无
职业类型号
Int
专业要求 Char(10)
无
是
否
否
无
无
无
已聘人数
需求人数
工资
Char(10) 无
Char(10) 无
Char(10) 无 否 无
4 介绍人员表(职业类型号为主键)
名称 数据类型 约束条件
无
是否为空
否
是
否
是
备注
无
无
无
无
介绍人编号
Int
姓名 Char(10) 无
无 职业类型号
Int
电话 Char(10) 无
5 求职者信息表(职业号为主键)
名称 数据类型 约束条件
无
是否为空
否
是
备注
无
无
求职者编号
Int
姓名 Char(10) 无
性别
职业号
是否聘用
Char(2)
Int
Check_sex
无
是
是
无
无
无 Char(10) 默认‘未聘 是
用’
月薪要求
Char(10) 无 是 无
6费用管理信息表(职业类型号为主键)
名称
职业类型号
单位交费
数据类型
Int
约束条件
无
是否为空
否
是
是
备注
无
无
无
Char(10) 无
求职者交费 Char(10) 无
4 物理结构设计
物理结构设计是为逻辑数据模型选取一个最适合应用环境的物理结构,将逻辑结构设计中的表用SQL语句创建出来。
创建存储过程
(1)创建存储过程查询各种职业的需求数和已聘用数;
use zhiyejieshao
if object_id ('pro_1','p')is not null
drop procedure pro_1
go
Create procedure pro_1
@职业名称_in char(10)
As
Select 需求人数,已聘人数
From 职业信息表where 职业名称=@职业名称_in
exec pro_1 '平面设计'
创建触发器
(1)求职成功时,自动修改相应职业的已聘人数,另外相应职业的已聘人数不得超过需求人数;
use zhiyejieshao
if object_id ('tri_1','tr')is not null
drop trigger tri_1
go
Create trigger tri_1 on 职业信息表
For update
As
Update 职业信息表 set 已聘人数=( select 已聘人数 from inserted )
Where 已聘人数=( select 已聘人数from deleted) and 已聘人数<=需求人数
(2)自动修改相应职工的聘用标志为“聘用成功”
Create trigger tri_2 on 求职者信息表
For update
As
Update 求职者信息表 set 是否聘用= ( select 是否聘用from inserted)
Where 是否聘用=( select 是否聘用from deleted)
创建规则限制
(1)创建规则限制求职者的性别,必须为‘男’或‘女’;
Create rule sex
As
@性别='男' or @性别='女'
go
建立表间关系
数据库备份与恢复
use zhiyejieshao
backup database zhiyejieshao
to disk =' E:sjkbf ' with init
go
use zhiyejieshao
restore database zhiyejieshao
from disk = 'E:sjhy' with recovery
go
五 界面设计
登录界面
主界面
查询界面
五、总结
学习了一个学期的数据库,我简单地了解数据库的建立、查询、删除和查询表中的相关信息,学会了一些基本的SQL的应用。所以按着书本上的数据库设计的基本步骤简单的设计了数据库“职业介绍信息管理系统”,还在网络上查询了相关信息。在设计时用select语句来查询表中的相关信息。创建了存储过程procedure,触发器trigger、
规则rule等来实现相关的功能,同时还学会了用DELHPI做前台界面,虽然使用的还是不太熟练,但是还是很有成就感。
通过这次课程设计,感觉还是有点收获的,能够借此机会回顾知识、牢记知识、复习知识。但也同时存在许多问题。比如:丢了书本就有点手足无措了,十分依赖书本知识;许多问题想不到也想不完全,通过向老师和同学虚心请教,终于基本完成了本次课程设计。
发布者:admin,转转请注明出处:http://www.yc00.com/web/1708535104a1572863.html
评论列表(0条)