1、大型数据库开 发与设计 题 目:求职网站 数据库设计 学 号: 姓 名: 张景斐 班 级 : 软件 1101 班序言 1 一 需 求 分 析 1 1.1 信 息 需 求 1 1.2 处 理 需 求 1 1.3 安 全 性 和 完 整 性 需 求 2 1.4 软 件 需 求 规 格 说 明 书 3 二 概 念 结 构 设 计 4 2.1 设 计 局 部 E-R 模 型 42.2 局 部 E-R 模 型 的 集合 5 三 逻 辑 结 构 设 计 6 3.1 将 E-R 图 转 换 成 关 系 数 据 模型 6 3.1.1 实体的转换 6 3.1.2 联 系 的 转换 73.2
2、CDM 7 四 物 理 结 构 设计 7 4.1PDM 8 4.3创建索 94.4备建创84.2引10五数据库实施 11 5.1 建 立 实 际 的 数 据 库 结 构 115.2测试 11 六 视 图 、 存 储 过 程 和 触 发 器 12 6.1 创 建 视 图 12 6.2 存 储 过 程 12 6.3 触 发 器 12 七 总 结 13求职网站数据库设计 序言 随着社会的进步和技术的发展,知识正在 发挥着很大的作用,市场的竞争在很大程 度上体现为人才的竞争。从而,找到合适 的人才,成为企业提高竞争力的一项关键 任务。同时,当今的市场环境又是一个快 速变化的环境,市场需求在变,对人才的
3、 需求也相应处于变化之中。如何能快速适 应这一变化,提高人才招聘流程的工作效 率,进行快速定位,也就成为人才招聘公 司、单位需考虑的重要因素。 一需求分 析 与传统方式比较,网上招聘具有时效性 强、保留信息长、查询方便快捷和电子文 档容易管理等好处,用人单位也开始把眼 界拓宽,不现拘泥于传统的招聘形式。通 过对用户进行调查、与用户讨论、查阅与 系统有关的记录等方法,获得用户对求职 网站数据库设计的如下需求。 1.1 信息需求 人才招聘网的一个最主要的目的就是为求 职者和用人单位提供方便快捷的双向选择 服务,因此其主要的使用者有两类,即寻 求合适工作的求职者和有招聘需求的公司, 并且其功能主要实
4、现双方信息的注册及信 息的交互。 信息注册主要包括求职者全部 个人信息的采集和公司现有信息情况的采 集。 信息交互即求职信息管理,主要包括 求职者向公司投递简历过程的记录和公司对求职者反馈信息管理和笔试、面试的管 理。 新闻信息。可以了解各行各业的最新 需求,社会动态,使用户可以多方位了解。1.2 处理需求 根据用户的功能需求,总结出 系统功能模块如下: 系统管理:用户注册、 注销、登录、修改密码。其中用户分为求 职用户与企业用户; 档案管理:用户档案 的建立、修改、保存、查询; 信息查询: 用户可根据专业、工作经验、薪金等属性 进行模糊查询; 信息互动:用户开通相关 服务后,可自动收到相关求
5、职、招聘信息, 从而减少用户搜索负担。 行业动态:根据 行业需求、工资变化,自动生成分析报告, 从而为就业提供一定指导。求职论坛:为用户提供一个网上交流论坛。数据流图如下: 1已发布职位求职身份填写投递在线企业 用户验证简历简历招聘用户个人简历已申 请职位 图 1-1 数据流图 1.3 安全性和完整 性需求 通过设计人员不断的与用户交流, 最终确定用户的实际需求。得到数据字典 如下: 数据字典: 名 称 :个人用户名名 称 :姓名 简 述 :即求职者注册的用 户名 简 述 :即求职者的真实名称 类 型 : 字符数字字母组合 类 型 :字符字母组合 长 度 :10 位 长 度 :10 位 取值范
6、围 : 汉字 数字 09 字母区分大小取值范围 :汉 字 字母区分大小写 az AZ 写 az AZ 名 称 :年龄 名 称 :学历 简 述 :即求 职者的真实年龄 简 述 :即求职者的真实 学历 类 型 :数字 类 型 :字符数字字母 组合 长 度 : 5 位 长 度 : 10 位 取值范围 : 数字 0100 取值范围 :汉字 数字 09 字母 区分大小 写 az AZ 名 称 :专业 名 称 :联系方式 简 述 :即求职者的主修专 业 简 述 :即求职者的电话号码 类 型 : 字符数字字母组合 类 型 :数字 长 度 : 10 位 长 度 : 10 位 取值范围 :汉字 数字 09 字母
7、区分大小取值范围 : 数字 09 写 az AZ2名 称 :企业用户名 名 称 :公司名称 简 述 :即招聘者注册的用户名 简 述 : 即招聘者真实的公司名称 类 型 :字符数 字字母组合 类 型 :字符数字字母组合 长度 :10 位 长 度 :20 位 取值范围 :汉字 数字 09 字母区分大小取值范围 :汉字 数 字 09 字母区分大小写 az AZ 写 az AZ 名 称 :行业 名 称:提供岗位 简 述 : 即招聘者公司所在行业 简 述 :即招聘者 招聘的岗位 类 型 :字符数字字母组合 类 型 :字符数字字母组合 长 度 : 10 位 长 度 : 10 位 取值范围 :汉字 数字 0
8、9 字母 区分大小取值范围 :汉字 数字 09 字母区 分大小写az AZ写az AZ1.4软件需求规格说明书软件需求说明书 软件需求说明书的编制是为了使用 户和软件开发者双方对该软件的初始规定 有一个共同的理解,使之成为整个开发工 作的基础。编制软件需求说明书的内容要 求如下: 1.序言 1.1 目的 设计求职网站 的数据库是为求职者和用人单位提供方便 快捷的双向选择服务。 1.2 背景 求职网 站的数据库设计是基于 SQL 2008 的 软件设计的。 1.3 定义 CDM: Data Model 概念数据模型 PDM: Data Mode
9、l 物理数据模型 1.4 参考资料a.本项目的经核准的计划任务书或合同、 上级机关的批文;b.数据库原理与应用教程 SQL ,2010 年 5 月第 1 版, 清华大学出版社,尹志宇著。 1.5 用户的特 点 该求职网站的数据库设计的最终用户是 企业用户和求职用户,他们需要将自己的 招聘信息和求职信息上传到网站,以便互 相查询。需要信息的一定时间的保存以及 随时查询。 本系统的设计人员熟练掌握的 数据库应用技术,维护人员也都有本科以 上的教育水平,能够对该系统做到保质保 量。 1.6 假定和约束 该求职网站的数据 库设计系统的经费经预算大概控制在 10-15 万之间。并能够在 2-
10、3 个月之内完成。 2. 需求规定 2.1 对功能的规定 3系统管理:用户注册、注销、登录、修改密码。其中用户 分为求职用户与企业用户; 档案管理:用户档案的建立、修 改、保存、查询; 信息查询:用户可根据专业、工作经验、 薪金等属性进行模糊查询; 信息互动:用户开通相关服务后, 可自动收到相关求职、招聘信息,从而减少用户搜索负担。 行业动态:根据行业需求、工资变化,自动生成分析报告,从 而为就业提供一定指导。求职论坛:为用户提供一个网上交流论坛。 2.2 时间特性要求a 响应时间控制在 0.5秒内; b .更新处理时间控制在10秒内;c.数据的转换和传送时间控制在30秒内。3.运行环境规定3
11、.1设备a .处理 器型号为英特尔、奔腾等,内存容量 4G 以下; b. 610M 独立 显示芯片, 2G 独立显存, 640GB 硬盘。 3.2 支持软件 能够在 XP、 7 环境下均可运行,在 SQL 以 及 power 软件下设计。 二.概念结构设计 2.1 设计局部 E-R 模型 根据需求分析所产生的文档,可以确定 每个局部 E-R 图描述的范围。根据分析求职网站所涉及的功能, 得出该系统所需要的实体如下: 1. 求职者:属性有编号、账号、 密码、姓名、性别、求职岗位、工作经验。 编号工作经验账 号求职岗位求职者密码性
12、别姓名图2-1求职者E-R图2.求职者简历:属性有编号、名称。 编号名称简历 图 2-2 求职者 简历E-R图43.企业:属性有编号、账号、密码。编号账号密码企业图2-3企业E-R图4.招聘信息:属性有编号、名称。 编号名称招聘信息 图2-4招聘信息E-R图5.工作岗位:属性有编 号、招聘人数、发布时间、工资、工作地 点、职位名称。 编号职位名称招聘人数工 作岗位发布时间工作地点工资 图 2-5 工作 岗位E-R图6.论坛:属性有发帖、回帖。发帖回帖论坛 图2-6论坛E-R图2.2局部E-R 模型的集合 由于局部E-R模型反映的只是求 职系统的单位局部子功能对应的数据视图, 可能存在不一致的地
13、方,还不能作为逻辑 设计的依据,这是可以去掉不一致和重复 的地方,将各个局 5部视图合并、优化为全局视图,即局部 E-R 模型的集成, 根据上述局部 E-R 图,可知这 些实体之间存在如下联系: 1.一个求职者可 以应聘多个工作,一个企业也可以招聘多个 求职者,因此,求职者和企业之间存在多对 多的应聘联系。 2.一个企业可以发布多个招 聘信息,因此,企业和工作之间是一对多的 联系。 3.一个求职者可以上传多份个人简历, 因此,求职者和建立之间是一对多的联系。 4.求职者和企业只能在一个论坛上发贴,但 却可以发很多条帖子,因此,论坛与求职者、 企业均为一对多的联系。结合局部E-R图与其之间的联系
14、,得出求职网站的整体 E-R 图如下: 论坛 11 发帖发帖 求职者 应聘企业发布工作 11 上传上传 nn 个人简历 招聘信息图 2-7 求职网站的 整体E-R图 三.逻辑结构设计数据库概 念设计阶段得到的数据模式是用户需求的形 式化,它独立于具体的计算机系统和 DBMS, 为了建立用户所需的求职网站数据库,必须 把上述数据模式转换成 SQL 所支持的 数据模式,并以此建立相应的外模式,即逻 辑设计阶段。3.1将E-R图转换成关系数据模 型 关系数据模型是一组关系模式的集合,而 E-R图是有实体、属性、实体之间的联系三要 素组成的。所以讲 E-R 图转化为关系数据
15、模 型实际上是要讲实体、属性和实体之间的联 系转化为关系模式。因此,将上述求职网站 的整体 E-R 图可按如下步骤和理论依据进行 转换。 3.1.1 实体的转换 一个实体转换为一 个关系模式,实体的属性就是该关系模式的 属性,实体的主码就是该关系模式的主码。63.1.2联系的转换 ( 1)两实体间 1:N 联系 可以转换为一个独立的关系模式,也可 以与 N 段对应的关系模式合并。 (2)两 实体间 M :N 联系,必须为联系产生一个 新的关系模式。该关系模式中至少包含被她所联系的双方实体的主码,若联系 中有属性,也要并入该关系模式中。 通 过上述方法转换的关系模式为,其中划 横线的为主码: 1
16、.求职者 求职者(求职者 编号,账号,密码,姓名,性别,求职 岗位,工作经验) 个人简历(个人简历 编号,名称) 求职者上传(求职者编号, 个人简历编号)2.企业 企业(企业编号,账号,密码) 工作岗位(工作岗位编号, 招聘人数,发布时间,工资,工作地点, 职位名称) 招聘信息(招聘信息编号, 名称) 企业上传(招聘信息编号,工作 岗位编号) 企业发布(企业编号,工作 岗位编号) 应聘(求职者编号,企业编 号,工作岗位编号,是否录用) 论坛 (求职者编号 / 企业编号,发帖,回帖) 3.2CDM 并通过 Power 做出 CDM 图如下: 四物理结构设计 将逻辑设计中产生的
17、数据库逻辑模型结合SQL ,设计出最适合应用环境的物理结 7构 的 过 程 。 4.1PDM 并 通 过 Power 做出PDM图如下:通过 2008 建立的表如下: 4.2 创建表 1.求职者2.企业3.个人简历4.工作岗位5. 招聘信息6.求职网站4.3 创建索引 利用对象资源管理器创建索 引如下图: 9代码如下: USE 求职网站 GO /* :Index PK 企业 _1 Date: 01/01/2014 21:18:54 */ .企业 _1 ADD 企业 _1
18、 KEY (企业编号 ASC )WITH( = OFF, TE = OFF, = OFF, = OFF, = OFF, = ON, = ON) ON GO 4.4 备份 为了避免故障的发生, 所以在故障发生之前应该做好备份工作, 一遍在意外发生之后能够尽快地恢复数据 库的运行。备份过程如下: 10五数据库实施 根据逻辑和物理设 计的结果,在计算机建立起
19、实际的数据库 结构,并装入数据,进行试运行和评价。 5.1 建立实际的数据库结构 用 DBMS 提供的 数据定义语言,编写描述逻辑设计和物理 设计结果的程序,经计算机编译处理和生成了实际的数据库结构。 5.2 测试 1.软件测 试的目的是: 测试是为了发现程序中的 错误而执行程序的过程; 好的测试方案是 尽可能发现迄今为止的尚未发现的错误和 测试方案; 成功的测试是发现了至今为止 尚未发现的错误的测试。 2.测试方法 测试 是软件工程过程当中的一个不可缺少的过 程。本系统在测试阶段采用的是黑盒测试 与单元测试。黑盒测试法把程序看成一个 黑盒子,完全不考虑程序的内部结构和处 理过程。也就是说,黑
20、盒测试是在程序接 口进行的测试,他只检查程序接口的功能 是否能按照规格说明书的规定正常使用, 程序是否能适当的接收输入数据产生正确 的输出信息,并且保持外部信息的完整性。 11六视图、存储过程和触发器 6.1 创建视图 建立的视图如下: 6.2 存储过程 系统的存储过程包括: 查询招聘 / 应聘信息:根据输入的参数地区、薪水、类别信息, 直接查找符合条件的结果集并返回。本查询用于在数据库断进 行查询,以减少 WEB 服务器的运算和查询压力。 6.3 触发器用 DML 触发器对求职者的表创建一个 触发器,并将删除的记录存入一个备份表。过程如下:12七总结 由于计算机技术的飞速发展,
21、加快了求职招 聘系统的进展。使传统上的求职招聘形式发生了重大的变革。 求职招聘系统无限的发展前景是不言而喻的。界面要求友好, 容易操作,方便快捷。网上求职招聘系统已经越来越受到求职 者与招聘人员的欢迎。相信不久的将来,网上求职招聘系统必 将带来无限的应用前景和市场价值。 本次论文中,对求职网站 的数据库设计进行了需求分析、概念设计、逻辑设计、以及物 理设计,最后对数据库进行实施、测试。系统基本符合网站风 格,满足求职网站所需要的功能,但是在本次试验中由于开发 时间相对而言较短,加上开发经验不足,系统还有待进一步研 究、改善,这些完善工作要留待以后的工作和学习中来完成。 同时通过这次课程设计使我
22、懂得了理论与实际相结合是很重要 的,只有理论知识是远远不够的,只有把所学的理论知识与实 践相结合起来,从理论中得出结论,才能真正为社会服务,从 而提高自己的实际动手能力和独立思考的能力。在设计的过程 中遇到问题,可以说得是困难重重,毕竟是第一次做这样的设 计,难免会遇到过各种各样的问题,同时在设计的过程中发现 了自己的不足之处,对以前所学过的知识理解得不够深刻,掌 握得不够牢固,例如在设计整体架构设计各表之间的关系时, 总是考虑不够周到,数据的完整性和一致性把握不 准。理论不够规范化,关系模式不够优越。为了实现这些,我也参阅了很多关于数据库设计方面的书,从中受益匪浅。因此,在以后的学习中应该认真学习,对知识深入了解。 13