数据库课程设计9210090514袁博.docx

上传人:b****0 文档编号:9440706 上传时间:2023-05-19 格式:DOCX 页数:17 大小:108.11KB
下载 相关 举报
数据库课程设计9210090514袁博.docx_第1页
第1页 / 共17页
数据库课程设计9210090514袁博.docx_第2页
第2页 / 共17页
数据库课程设计9210090514袁博.docx_第3页
第3页 / 共17页
数据库课程设计9210090514袁博.docx_第4页
第4页 / 共17页
数据库课程设计9210090514袁博.docx_第5页
第5页 / 共17页
数据库课程设计9210090514袁博.docx_第6页
第6页 / 共17页
数据库课程设计9210090514袁博.docx_第7页
第7页 / 共17页
数据库课程设计9210090514袁博.docx_第8页
第8页 / 共17页
数据库课程设计9210090514袁博.docx_第9页
第9页 / 共17页
数据库课程设计9210090514袁博.docx_第10页
第10页 / 共17页
数据库课程设计9210090514袁博.docx_第11页
第11页 / 共17页
数据库课程设计9210090514袁博.docx_第12页
第12页 / 共17页
数据库课程设计9210090514袁博.docx_第13页
第13页 / 共17页
数据库课程设计9210090514袁博.docx_第14页
第14页 / 共17页
数据库课程设计9210090514袁博.docx_第15页
第15页 / 共17页
数据库课程设计9210090514袁博.docx_第16页
第16页 / 共17页
数据库课程设计9210090514袁博.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据库课程设计9210090514袁博.docx

《数据库课程设计9210090514袁博.docx》由会员分享,可在线阅读,更多相关《数据库课程设计9210090514袁博.docx(17页珍藏版)》请在冰点文库上搜索。

数据库课程设计9210090514袁博.docx

数据库课程设计9210090514袁博

SQLServer数据库

——课程作业

 

作业题目:

求职招聘管理信息系统

 

院(系):

信息技术系

班级:

网络工程本科1班 

学号:

9210090514

学生姓名:

袁博

 

一、数据需求分析:

根据调查以往企业招聘都是由应聘人员将自己的简历以及求职信等资料寄望应聘单位或由求职者本人亲自将其送往应聘企业的人事部门,在这过程中不论是企业还是应聘者本人都投入了大量的时间和精力,造成了严重的资源浪费且效率低下同时也造成了大量资源的闲置现象。

本系统的建设有利于解决这些问题并提高双方的工作效率。

招聘管理信息系统的开发目的,就是通过系统的开发,实现企业招聘工作的,提高业务的计算机化,提高业务的处理速度和规范化程度,并对整个人力资源管理工作进行重组,进一步通过计算机网络提升整个企业的管理信息化水平。

1.从信息需求的角度分析

信息注册主要包括求职者全部个人信息的采集和公司现有信息情况的采集。

信息交互即求职信息管理,主要包括求职者向公司投递简历过程的记录和公司对求职者反馈信息管理和笔试、面试的管理。

新闻信息。

2.从用户的角度分析

求职者要注册个人信息,并记录简历的投递信息。

公司要注册其详细信息,并记录对求职者的笔试、面试的管理。

网站管理员进行个人用户和企业用户的管理。

2.2.1业务流程分析

业务流程是一个由各种不同功能的活动相连的一组有相互关系的任务,它们依照一定的业务逻辑和顺序依次执行,是一种描述系统内各单位、人员之间的业务关系、作业顺序和管理信息流方法。

根据本系统的设计需求,首先系统要有两个登录界面,个人用户和公司用户通过不同的界面进入系统,提高系统的安全性。

当求职者的功能包括:

用户基本信息管理,笔试管理,职位信息管理。

求职招聘业务流程描述如下:

1.用户基本信息管理:

求职者不仅可以查看自己简历的基本信息,还可以对其更新。

2.笔试管理:

可以查看公司发送来的笔试邀请。

3.面试管理:

可以浏览到公司的面试成绩,如果被录用这会有提示信息。

4.职位信息管理:

求职者可以检索到公司中的公司信息,公司中职位的详细信息,根据职位信息情况可以申请具体职位。

本系统的求职招聘业务流程图如图2-1所示。

图2-1求职招聘业务流程图

企业人员经过不同的分工,能够实现的操作有以下几个部分:

包括企业信息管理,笔试管理,面试管理,职位管理,求职者管理。

1.企业信息管理:

公司可以管理公司的基本信息,对一些变化的信息进行及时的更新。

2.笔试管理:

参加笔试完之后,公司需要把笔试成绩录入到系统中,还可以对成绩进行更新,公司对成绩满意之后可以向用户发送面试请求。

3.职位管理:

公司对新职位的发布,对职位信息的实时更新,已经不需要的或是已招满的职位实施删除。

4.求职者管理:

公司可以对所有的求职者遍历,找到满意的人可以允许其参加相应职位的笔试考核,还可以对已申请职位的人员进行整体查看,对满意的求职者发送笔试邀请信息。

2.2.2数据流图

数据流图(DFD:

DataFlowDiagram)就是组织中信息运动的抽象,是信息逻辑系统模型的主要形式。

数据流图由数据流、加工、数据存储和数据源点构成。

1.数据流是数据在系统内传播的路径,因此由一组固定的数据组成。

由于数据流是流动中的数据,所以必须有流向。

2.加工(又称为数据处理),对数据流进行某些操作或变换。

3.数据存储(又称为文件),指暂时保存的数据。

图2-2为系统前台数据流图。

图2-2 系统前台数据流图

图2-3为系统后台数据流图。

二、数据库概念设计(E-R图设计):

三、数据库逻辑结构设计:

这个是我的数据库部分表结构:

数据库采用SQLSERVER2005数据库实现,数据库名为zhaopin,共包括6个数据表,具体描述如下:

表名:

Users数据来源:

简历基本信息表结构如表3-3所示

表3-3Users(个人简历表)

字段名

数据类型

长度

备注

描述

personId

INT

4

PrimaryKey

用户id

personUsername

VARCHAR

100

Notnull

用户名

personPassword

VARCHAR

100

Notnull

密码

realName

VARCHAR

100

Notnull

真实姓名

personSex

CHAR

2

Notnull

性别

personBirsday

CHAR

11

Notnull

出生日期

personContry

VARCHAR

50

Notnull

国家地区

personHukou

VARCHAR

4

户口类型

personHenfenzheng

VARCHAR

20

Notnull

身份证号

juzhudi

VARCHAR

100

籍贯

email

VARCHAR

50

Notnull

Email

phone

VARCHAR

50

联系电话

place

VARCHAR

100

联系地址

youbian

INT

6

Notnull

邮政编码

monny

VARCHAR

10

币种

dengluriqi

CHAR

11

Notnull

登录日期

jianglitime

CHAR

11

奖励时间

jiangxiang

VARCHAR

50

奖项

jibie

VARCHAR

10

级别

muqianyuexin

VARCHAR

10

Notnull

目前月薪

waiyuyuzhong

VARCHAR

10

外语语种

zhangwochengdu

VARCHAR

10

掌握程度

shijianstarttime

CHAR

11

实践开始时间

shijianendtime

CHAR

11

实践结束时间

shijianmingcheng

VARCHAR

50

实践名称

shijianmiaoshu

VARCHAR

8000

实践描述

starttime

CHAR

11

Notnull

开始日期

endtime

CHAR

11

Notnull

结束日期

school

VARCHAR

50

Notnull

毕业学校

zhuanye

VARCHAR

50

Notnull

专业

zhuanyemiaoshu

VARCHAR

8000

专业描述

zhiwustarttime

CHAR

11

职务开始时间

zhiwuendtime

CHAR

11

职务结束时间

zhiwumingcheng

VARCHAR

50

职务名称

zhiwumiaoshu

VARCHAR

8000

职务描述

表名:

QiuzhiPosition数据来源:

求职意向表表结构如表3-4所示

表3-4 QiuzhiPosition(求职意向表)

字段名

数据类型

长度

备注

字段描述

positionId

INT

4

PrimaryKey

id

gongzuoleixing

VARCHAR

50

Notnull

工作类型

gongzuojingyan

VARCHAR

50

Notnull

工作经验

gongzuodidian

VARCHAR

50

Notnull

工作地点

hangye

VARCHAR

50

Notnull

行业

zhineng

VARCHAR

50

Notnull

职能

qiwanggongzhi

VARCHAR

50

Notnull

期望工资

zhiwopingjia

VARCHAR

8000

自我评价

xueli

VARCHAR

10

Notnull

学历

personId

INT

4

ForeignKey

简历用户id

表名:

Company数据来源:

公司信息表结构如表3-5所示。

表3-5 Company(公司表)

字段名

数据类型

长度

备注

描述

CompanyId

INT

4

PrimaryKey

公司id

username

VARCHAR

50

Notnull

用户名称

password

VARCHAR

50

Notnull

公司密码

companyname

VARCHAR

50

Notnull

公司名称

companyxingzhi

VARCHAR

20

Notnull

公司性质

CompanyHangye

VARCHAR

50

Notnull

公司行业

CompanyGuimo

VARCHAR

20

Notnull

公司规模

CompanyEmail

VARCHAR

30

Notnull

电子邮件

compnywangzan

VARCHAR

100

公司网站

place

VARCHAR

50

工作地点

youbian

INT

6

邮编

chuanzhen

VARCHAR

20

传真

lianxiren

VARCHAR

20

联系人

dengluriqi

VARCHAR

11

Notnull

登录日期

CompanyJianjie

VARCHAR

8000

公司简介

表名:

Position数据来源:

职位信息表结构如表3-6所示。

表3-6Position(职位表)

字段名

数据类型

长度

非空

描述

PositionId

INT

4

PrimaryKey

职位id

PositionName

VARCHAR

50

Notnull

职位名称

positionhangye

VARCHAR

50

Notnull

职位行业

PositionStartdate

VARCHAR

11

Notnull

发布日期

PositionEnddate

VARCHAR

11

Notnull

截止日期

workplace

VARCHAR

100

Notnull

工作地点

zhaopinrenshu

VARCHAR

50

Notnull

招聘人数

gongzuonianxian

VARCHAR

10

Notnull

工作经验

gongzidaiyu

VARCHAR

10

Notnull

工资待遇

xueli

VARCHAR

10

Notnull

学历要求

gongzuoleixing

VARCHAR

10

Notnull

工作类型

positionmianshu

VARCHAR

8000

职位描述

bishitime

VARCHAR

11

笔试时间

bishiplace

VARCHAR

50

笔试地点

mianshitime

VARCHAR

11

面试时间

mianshiplace

VARCHAR

100

面试地点

CompanyId

INT

4

ForeignKey

公司id

表名:

Admin数据来源:

管理员信息表结构如表3-7所示。

表3-7Admin(管理员表)

标识符

数据类型

长度

非空

描述

id

INT

4

PrimaryKey

管理员id

Adminname

VARCHAR

20

管理员名称

password

VARCHAR

20

管理员密码

personUsername

VARCHAR

50

会员名称

compnyUsename

VARCHAR

50

公司名称

question

VARCHAR

100

问题

answer

VARCHAR

100

答案

表名:

UserShenQing数据来源:

职位申请信息表结构如表3-8所示

表3-8UserShenQing(职位申请表)

字段名

数据类型

长度

备注

字段描述

id

INT

4

PrimaryKey

Id

personId

INT

4

ForeignKey

用户简历id

companyId

INT

4

ForeignKey

公司id

positionId

INT

4

ForeignKey

职位id

datetime

VARCHAR

11

Notnull

申请日期

chakan

INT

1

是否查看

bishi

INT

1

是否笔试

bishi_score

INT

20

笔试分数

mianshi

INT

1

是否面试

mianshi_score

INT

20

面试分数

luyong

INT

1

是否录用

四、数据库详细设计

1、索引设计

索引是SQLSERVER中的一种数据库对象,在数据库大量数据中,为了迅速查找你需要的数据,或者为了排序的需要,首先我们知道索引是针对表而设计的。

设计如下:

1对于表Users中personId字段进行升序唯一的聚集索引

2对于表QiuzhiPosition中positionId字段进行升序唯一的聚集索引

3对于表Company中CompanyId字段进行升序唯一的聚集索引

4对于表Position中PositionId字段进行升序唯一的聚集索引

5对于表Admin中id字段进行升序唯一的聚集索引

6对于表UserShenQing中id字段进行升序唯一的聚集索引

2、存储过程设计

1BasicInfo:

setANSI_NULLSON

setQUOTED_IDENTIFIERON

go

ALTERProcedure[dbo].[Com_BasicInfo]

@Comidnvarchar(30)

As

SelectCompanyName,Licence,Industry,Properity,Set_Year,Set_Month,Set_Day,Workers,Reg_Currency,CurrencyType,Company_Memo,ContactPerson,Phone,PhoneKeep,CompanyFax,Email,EmailKeep,Locus_Area,Locus_City,Address,ZipCode,WebHomeFrom[pH_Company_Base]WhereComid=@Comid

行进公司查询

2查询用户

setANSI_NULLSON

setQUOTED_IDENTIFIERON

go

ALTERPROCEDURE[dbo].[Per_BasicInfo]

@Peridnvarchar(30)

AS

SelectB.UserEmail,I.RealName,I.Sex,I.Nation,I.Marry,I.Door_Area,I.Door_City,I.Locus_Area,I.Locus_City,I.Stature,I.TiZhong,I.Birthyear,I.BirthMonth,I.BirthDay,I.PersonPhone,I.Msnqq,I.WebHome,I.Appraise,I.CodeId,I.CodeType,I.Mt,I.ZipCode,I.Address,I.JobType,i.Exper,i.SkillsFrompH_Person_BaseAsB,pH_Person_InfoAsIWhereB.Perid=@PeridAndB.Perid=I.Perid

3查询用户消息

setANSI_NULLSON

setQUOTED_IDENTIFIERON

go

ALTERprocedure[dbo].[Per_UserName]

@Peridnvarchar(30)

As

SelectRealName,JobType,UserNameFrom[pH_Person_Info]WherePerid=@Perid

3、触发器设计

在SQLSERVER为每个触发器都创建了两个专用表:

inserted表和deleted表。

这是两个逻辑表,由系统来维护,在触发执行时存在,在触发结束时消失。

1People表

Go

Createtriggerdel_peo

OnUser

Afterdelete

As

DeletefromUser

WherePersonidin(Selectfromdeleted)

go

2Admin表

go

CreatetriggerAdm_Ins

OnAdmin

AfterInsert

As

if(selectidfromPeople,insertedwherePeople.id=inserted.id)=1beginprint'ThePeopleisbeingprocessed'rollback

transactionend

4、数据完整性设计

我通过以下方面设计:

主键约束(Primarykey)

外键约束(Foreignkey)

惟一性约束(Unique)

缺省约束(Default)

检查约束(Check)

1、主键约束(Primarykey)

主键约束利用表中一列或多列数据惟一地确定表中的每一条记录。

注意:

如果主键约束定义在不止一列上,则一列中的值可以重复,但所有列的组合值必须惟一

主键列不能取空值

主键列不存在重复的值

主键只能设置一个

设置People表的主键约束

在企业管理器中右击要操作的数据表(People),从弹出的快捷菜单中选择“设计表”选项,则出现设计表对话框

设置表的主键约束

选中要设置为主键的字段,如果有多个字段,按住Ctrl同时选中,从快捷菜单中选择“设置主键”或单击

设置Company表的主键约束

设置Company表的id为主键约束

2、惟一性约束(Unique)

用来确保不受主键约束的列上的数据的惟一性。

例如:

身份证号。

与主键的区别:

Unique约束允许该列上存在NULL值,主键不允许

可以在一个表中设置多少Unique约束,而主键只能设置一个

3、检查约束(Check)

检查约束对输入列或整个表中的值设置检查条件,以限制输入值,保证数据库数据的完整性

一个表可以定义多个检查约束

每个字段只能对应一个检查约束

为User(用户信息)表中的Sex字段创建检查约束,使其只能接受“男”或者“女”的输入

4、创建默认约束

默认约束指在插入操作中没有提供输入值时,系统自动指定的值。

默认约束可以包括常量、函数、空值。

每个字段只能定义一个默认约束

如果定义的默认值长于该字段的允许长度,那么输入的默认认值会被截断

5、数据库安全性设计

数据库可以实现数据的共享,但是就必然会存在数据库安全的问题,所以,我将这个系统的数据库做如下处理,将数据库设置系统的核对口令,确保只授权给有资格的用户访问数据库的权限,定义合法的用户存储,并且进行权限合法的检验。

另外通过SQL的GRANT和REMOVE的语句实现用户权限组成(授权)

授权给公司(管理员),在这里我们可以认为是公司方面的招聘人员,可以对User信息修改、删除和认证

同时可以对权限收回,如果检验应聘人员时发生错误,可以将已经授权的收回。

数据库的角色是指付给不同职务不同的权利,例如对于注册应聘的人不具有修改Company表中消息的权利,而招聘这个岗位则有。

五、存在问题与不足:

 部分表中的外键设置不好,而且表与表之间的联系较多,会造成部分的低内聚和高耦合,有部分没加密的数据会成为敏感信息给不法分子机会,还有就是权限晋升造成缓冲区溢出,还有开启了不必要的数据库功能,没有避免SQL注入,我将在以后逐步完善系统的数据库和存在的问题。

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2