吉林建筑大学毕业设计(论文)
4.3 数据库设计
4.3.1 数据分析
数据分析[13]过程同数据库的逻辑结构和物理结构密切相关,需要确定、编制、组织、筛选应用程序所使用的信息,它以一种能够分析和分类的方式来捕获用户的所有信息,这使得某一模型可以直接转化成数据库结构。
我们使用一种信息建模技术,这种技术是通过实体、关系、属性三种基本对象来定义信息。实体是需要维护和使用的相关特性的集合体;属性是实体的特性或特征;关系是实体之间的联系,关系为实体记录(实例)之间的联系和交互作用方式建立了模型。要确定实体和关系的性质,用户必须确定单个实体和他们相关的属性,为每个对象定义一个完整的与商业相关的描述以及他单独使用的要求,这也包括确定此实体是否使用应用程序的永久需求,每种关系的基本定义使用了商业定义和与关系相连接的需求。
在为实体确定相关的属性过程中,也需要确定此实体的主键和索引,并且要确定在每个实体中怎样组织这些属性,确定属性的数据类型和它是否为空值,在高层次的描述过程,还可以确定所有扩展属性信息,包括长度、格式、编辑风格、校验规则和初始值。单独实体的属性被组织起来,用户就能够开始以某一种组织方式来给实体分类。用户必须通过关系,来为实体分组的方式确定分类模式,这是抽象化的初始层,或者说是通过隐藏模糊的信息来提高对分析的理解,通过将数据分类成组,就产生了相关分组的不同类型,这样,更加易于观察和分析。
由于本求职招聘网站系统面向的对象有三个:求职者、企业和管理员,并且要求完成职位发布、简历投递的招聘流程流程,所以,数据库需求分析中就要考虑三方面的因素:
对于求职者来讲,他首先要注册成为本网站的会员,然后通过本网站查询相应的招聘信息,并且可以发布自己的求职信息,假如遇到合适的职位可以通过站内信件与用人单位联系等。
对于企业来讲,它首先也要注册成为本网站的会员,然后通过本网站查询相关的求职信息,并且可以发布自己的招聘信息,如果遇到满足岗位要求的条件的求职者可以通过站内信件与求职者进行联系等。
对于管理员,他们所关心的主要是如何对网站内的信息进行审核、修改与删除操作。经过上述系统功能分析,考虑到将来功能上的扩展,设计如下面所示的数据项和数据结构。对于招聘流程来讲,首先需要考略到流程中所涉及到的实体其中包括职位、简历等实体,以及实体间的关联关系。
-15-
吉林建筑大学毕业设计(论文)
4.3.2 数据ER图
简历信息,包括的数据项:主键ID、职位类别、职位性质、教育经历、工作经验、项目经验、自我描述等一些其他数据项。
图4-5简历实体
学历姓名性别电话简历主键ID工作结束时间工作经验专业名称获得学位作品Url学校名称学校开始时间简历项目描述项目结束时间项目开始时间邮箱期望工作城市期望工作性质简历连接自我描述担任职务期望工作职位工作开始时间简历状态做过项目名称曾经职位期望薪酬学校结束时间作品描述曾经工作公司
用户实体信息,包括的数据项:用户邮箱、用户主键ID、用户姓名、注册时间、用户类型、用户密码。
图4-6用户实体
用户用户邮箱用户主键ID用户姓名注册时间用户类型用户密码 公司实体信息,包括的数据项:公司主键ID、公司名称、公司地址、公司简介、公司风采图片。
-16-
吉林建筑大学毕业设计(论文)
图4-7公司实体
公司公司ID主键公司名称公司地址公司简介公司风采图片 职位实体信息,包括的数据项:主键ID、职位类型、职位名称、职位部门、职位描述、学历要求、职位工资、职位性质、职位诱惑、工作经验、工作城市、公司名称。
图4-8职位实体
主键ID职位类型职位名称职位部门职位描述学历要求职位职位工资职位性质职位诱惑工作经验工作城市公司名称 4.4 数据表
用户信息表:用于存放系统注册人员信息,其中包含个人求职、企业以及系统管理员的信息。
图4-9用户信息表
企业信息表:用于存放企业的详细信息,其主键与用户信息表中字段存在关联关系,可以通过用户的主键直接查询公司的详细信息,若用户为求职者或管理员则不存在这样的关联关系。
-17-
吉林建筑大学毕业设计(论文)
图4-10公司信息表
职位信息表:用于存放企业发布职位的详细信息,与用户表user_id存在多对一的关联关系,用于记录该职位是由那个用户发布的。
图4-11职位信息表
招聘快讯表:用于存放招聘快讯,其中包括求职者和企业所需要的信息。其中user_id为该表的外键,与用户表的主键存在关联关系,用来表示该条数据谁由发布。
图4-12新闻信息表
简历信息表:用于存放求职者的个人简历,其中包含求职者的工作经验,项目经历,以及相关的教育经历,是本系统中最为主要的几张表之一,下图为
-18-
吉林建筑大学毕业设计(论文)
部分数据列:
图4-13简历表部分信息
综上所述,本章从系统总体入手,对系统进行了总体设计,给出了系统总体架构设计。将系统功能模块划分为前台和后台两大块,并给出系统功能图。然后对系统进行数据库模型设计,给出系统 E-R 图[14],并将其转化成关系模型,进而给出数据库逻辑设计与实现,也就是具体的数据库表。总体设计阶段,在需求分析的基础之上规划出了系统的功能模块,以及在此分析基础上设计出的具体的!可以满足本系统全部需求的数据库\由于数据库在设计中有非常重要的作用,所以在开发过程中,在考虑数据库[15]上的时间较多。
-19-