为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 机票预订系统数据库案例

机票预订系统数据库案例

2009-11-19 24页 pdf 558KB 40阅读

用户头像

is_149047

暂无简介

举报
机票预订系统数据库案例 摘 要 I 摘 要 为了更好的巩固和加强书本所学的知识,把所学的东西转化为实际应用。我们学习 了 IBM DB2应用程序的使用。并应用了 SQL语言。对数据库的创建、修改、删除方法 有了一定的了解。通过导入表和删除表、更改表学会了对于表的一些操作。为了建立一 个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、 物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。 当人们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽 取有用的信息。...
机票预订系统数据库案例
摘 要 I 摘 要 为了更好的巩固和加强本所学的知识,把所学的东西转化为实际应用。我们学习 了 IBM DB2应用程序的使用。并应用了 SQL语言。对数据库的创建、修改、删除方法 有了一定的了解。通过导入表和删除表、更改表学会了对于表的一些操作。为了建立一 个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、 物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。 当人们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽 取有用的信息。当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧 增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好的利用 这些数据资源。 通过机票预定系统的构造以及购票人的信息还有机票的相关信息制成,输入到 数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。需求 分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。概念设计阶段 要完成数据抽象与局部视图设计还有视图的集成。逻辑结构设计阶段要把 E-R 图转化为 关系模式并且把我输入的五张表结合在一起完成一个总关系表。最后就是要运行和实施 数据库。要把查询结果与过程抓几张图 关键词:SQL语言;IBM DB2;数据库设计;机票预定系统 大连交通大学数据库课程设计 II 目录 第一章绪论 .......................................................................................... 1 1.1课题简介....................................................................................................1 1.2设计目的....................................................................................................1 1.3设计内容....................................................................................................1 第二章需求分析 .................................................................................. 2 2.1需求分析的任务........................................................................................2 2.2需求分析的过程........................................................................................2 2.3数据字典....................................................................................................2 第三章概念结构设计 .......................................................................... 8 3.1概念结构设计的方法与步骤....................................................................8 3.1.1概念结构设计的方法 ..................................................................................... 8 3.1.3概念结构设计的步骤 ..................................................................................... 8 3.2数据抽象与局部视图设计........................................................................8 3.3视图的集成................................................................................................9 第四章逻辑结构设计 ........................................................................ 11 4.1E-R图向关系模型的转换 .......................................................................11 4.2数据模型的优化......................................................................................11 4.3数据库的结构..........................................................................................12 第五章数据库的实施与运行 ............................................................ 15 5.1数据的载入..............................................................................................15 5.2数据库的运行..........................................................................................18 总结 .................................................................................................... 21 参考文献 ............................................................................................ 22 第三章 概念结构设计 1 第一章 绪论 1.1课题简介 随着时代的发展,计算系软件和系统的成熟,机票如果简单方面预定成为一个影响 多数人生活的问题。而建立机票预定系统是一个很好的解决办法。经过三年的学习,我 们对计算机方面的知识有了很大的提升,本着理论联系实际的宗旨,通过学校提供的这 次课程设计实践的机会,在指导教师的帮助下,历经两周时间,我自行设计一套机票预 定管理系统,在下面的各章中,我将以这套机票预定系统信息系统为例,谈谈其开发过 程和所涉及到的问题。 1.2设计目的 应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的 结合起来,巩固所学知识。 实践和巩固在课堂教学中学习的关于 DB2 的有关知识,熟练掌握对于给定结构的 数据库的创建、基本操作、程序系统的建立和调试以及系统评价。 实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的 建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须 得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系 统评价的一般过程,为毕业设计打下基础。 1.3设计内容 选择课题并且对课题的相关信息有一定的了解,对于我选的课题来说,我必须了 解机票预定系统的构造以及购票人的信息还有机票的相关信息。通过这些信息制成表 格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的 操作。需求分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。概 念设计阶段要完成数据抽象与局部视图设计还有视图的集成。逻辑结构设计阶段要把 E-R图转化为关系模式并且把我输入的五张表结合在一起完成一个总关系表。最后就是 要运行和实施数据库。要把查询结果与过程抓几张图。 大连交通大学数据库课程设计 2 第二章 需求分析 2.1 需求分析的任务 调查机票预定系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操 作要求进行详细分析,形成需求分析说明书。最重要的是调查、收集信息、分析购票人 信息和飞机预定流程。处理要求、数据的安全性与完整性要求。 要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面 要简单明了,易于操作,服务器程序利于维护。 2.2 需求分析的过程 航空公司为方便旅客,需开发一个机票预定系统。为便于旅客由旅行社代替航空 公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、 身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查 询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。旅客在飞机起 飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。如果某 方面出现问题,旅客可以持有效证件去飞机场退票。 要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界 面要简单明了,易于操作,服务器程序利于维护。 2.3 数据字典 经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况, 给出旅客信息、订票信息和取票通知的具体需求。 第三章 概念结构设计 3 图 2.1 旅客购票流程图 ⑴ 调查用户需求 ① 机场办公需求 z 功能:旅客持个人证件去机场购买机票。希望能通过旅客姓名查到该旅客 的飞机编号并记录旅客基本信息。 z 统计功能: ‹ 按机票统计买票人数 ‹ 按姓名统计机票数 ②旅客购票需求 z 交费功能: ‹ 交费 ‹ 退费 ③ 取票需求 z 通知功能: ‹ 通知旅客取票 z 统计功能: ‹ 统计通过验证的人数 ‹ 统计可以取票的人 ‹ 统计未通过验证的人数 z 查询功能: 大连交通大学数据库课程设计 4 ‹ 购票旅客查询 购票旅客姓名 购票旅客身份证号 购票旅客订单号 ④ 航班信息需求 z 查询功能: ‹ 航班号 ‹ 起飞地 ‹ 目的地 ‹ 起飞时间 ⑵ 分析用户需求 在调查完了用户需求之后,就要开始分析用户需求。在此,我们采用自顶向下的结 构化分析方法(SA方法)。首先,定义全局概念结构的框架,如图 2.2所示。 图 2.2机票预定系统总框架图 各子系统需要进一步细化。旅客信息系统为例进一步细化,如图 2.3所示。 图 2.3旅客信息系统细化 第三章 概念结构设计 5 以其中的查询旅客信息功能为例进一步细化,如图 2.4所示。 图 2.4查询旅客信息功能 图 2.5旅客信息系统细化 图 2.6取票通知系统细化 大连交通大学数据库课程设计 6 图 2.7旅客信息系统能查询到的内容 机票信息系统 航班号 座位号 机票类型 图 2.8机票信息系统能查询到的内容 图 2.9退票信息系统细化 将所有子系统全部细化。将所有用户需求分析完毕之后,就要开始构造数据字典了。 经分析之后,本系统要用到五个基本表:退票信息表,旅客信息表,航班信息表, 取票通知单,航班座位信息表。数据结构定义如表 2.1所示。 第三章 概念结构设计 7 表 2.1 数据结构定义 数据结构名 含义说明 组成 退票信息 定义了退票旅客的有关信息 旅客姓名,身份证号,订单号,电话号 旅客 定义了旅客有关信息 旅客姓名,身份证号,性别, 工作单位,电话号 航班信息表 定义了航班 的有关信息 航班号,起飞地,目的地,起飞时间 取票通知单 定义了取票通知相关有关信息 旅客姓名,取票时间,航班号,座位号,机 票类型 航班座位息 表 定义了航班座位有关信息 航班号,座位号,座位信息,机票类型 大连交通大学数据库课程设计 8 第三章 概念结构设计 3.1 概念结构设计的方法与步骤 3.1.1 概念结构设计的方法 概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向 上的进行概念结构设计。对已经细化到无法再分的阶段逐步集成在一起,最终合成一个 全局概念模式。 3.1.3 概念结构设计的步骤 第一步是进行局部视图的设计:由于高层的数据流图只能反映系统的概貌,而中层 流图能较好的反映系统中各局部应用的子系统组成。因此我们先逐一的设计分 E-R图。 第二步是进行视图的集成:各子系统的 E-R 图设计好之后,下一步就是要将所有 的分 E-R图合成一个系统的总 E-R图,一般有两个方式,多个分 E-R图一次集成,另 一种是一次集成两个分 E-R图。我想采用一次集成两个分 E-R图的方式。 3.2 数据抽象与局部视图设计 按照图 2.2机票预定系统总框架图,设计局部 E-R图。 图 3.1旅客购票的 E-R图 图 3.2机场售票的 E-R图 第三章 概念结构设计 9 3.3视图的集成 描述进行视图集成的具体过程,最后得到图 3.4总体概念结构 E-R图。 经过逐步细化再进行每两个一集成初步形成一个 E-R图,以这个为例,其他省略。 图 3.3把两个两个集成的 E-R图再进行合并最终形成一个总体的 E-R图 大连交通大学数据库课程设计 10 旅客 性别 退票 身份证号 工作单位 身份证号 订单号 旅客姓名 退票信息 航班信息表 航班号 起飞地 目的地 起飞时间 购买 航班座位 信息表 座位号 航班号 座位信息 机票类型 包含取票 取票时间 机票类型 座位号 航班号 旅客姓名 取票通知 单 旅客姓名 电话号 电话号 图 3.4 总体概念结构 E-R 图 第四章 逻辑结构设计 11 第四章 逻辑结构设计 4.1 E-R图向关系模型的转换 将图 2.5总体概念结构 E-R图转化成关系模型。 退票信息(订单号,旅客姓名,电话号,身份证号)外键:旅客姓名 旅客(旅客姓名,身份证号,电话号,性别,工作单位) 航班信息表(航班号,起飞地,目的地,起飞时间) 取票通知单(旅客姓名,取票时间,航班号,座位号,机票类型)外键:航班号, 座位号 航班座位信息表(座位号,航班号,座位信息,机票类型)外键:航班号 4.2 数据模型的优化 将转化的关系模式进行优化,最终达到第三范式。 一.确定数据依赖 退票信息(订单号,旅客姓名,电话号,身份证号)根据这个关系写出数据依赖 订单号→旅客姓名,订单号→电话号,订单号→身份证号 旅客(旅客姓名,身份证号,电话号,性别,工作单位) 旅客姓名→身份证号,旅客姓名→电话号,旅客姓名→性别,旅客姓名→工作单位 航班信息表(航班号,起飞地,目的地,起飞时间) 航班号→起飞地,航班号→目的地,航班号→起飞时间 取票通知单(旅客姓名,取票时间,航班号,座位号,机票类型) 旅客姓名→取票时间,旅客姓名→航班号,旅客姓名→座位号, 旅客姓名→机票类型 航班座位信息表(座位号,航班号,座位信息,机票类型) (座位号,航班号)→座位信息,(座位号,航班号,座位信息)→机票类型 二.对各关系模式间数据依赖进行极小化处理,消除冗余 订单号→旅客姓名,订单号→电话号,订单号→身份证号,旅客姓名→性别 旅客姓名→工作单位,旅客姓名→取票时间,旅客姓名→航班号 旅客姓名→座位号,旅客姓名→机票类型,航班号→起飞地,航班号→目的地 大连交通大学数据库课程设计 12 航班号→起飞时间,(座位号,航班号)→座位信息 三.看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解 最终分解成第三范式: (订单号,电话号,身份证号)(订单号,旅客姓名)(旅客姓名,取票时间,性别, 工作单位,机票类型)(旅客姓名,航班号)(旅客姓名,座位号)(航班号,座位号, 机票类型)(航班号,起飞地,目的地,起飞时间) 4.3 数据库的结构 给出机票预定系统基本表总体结构图。 图 4.1 各表的结构 第四章 逻辑结构设计 13 根据总体结构图设计各表的结构。 表 4-1 旅客信息系统的结构 字段名 数据类型 长度 约束 描述 passager name varchar 50 主键 旅客姓名 id decimal 20 不为空 身份证号 telephone number decimal 20 不为空 电话号 sex varchar 50 不为空 性别 work department Varchar 50 不为空 工作单位 表 4-2 退票信息系统的结构 字段名 数据类型 长度 约束 描述 order form decimal 20 主键 订单号 passager name varchar 50 不为空 旅客姓名 telephone number decimal 20 不为空 电话号 id varchar 50 不为空 身份证号 表 4-3 航班信息表系统的结构 字段名 数据类型 长度 约束 描述 Flight number decimal 20 主键 航班号 Take off place varchar 50 不为空 起飞地 destination varchar 50 不为空 目的地 Flight time time - 不为空 起飞时间 大连交通大学数据库课程设计 14 表 4.4取票通知单系统的结构 字段名 数据类型 长度 约束 描述 passager name varchar 50 主键 旅客姓名 Get ticket time time - 不为空 取票时间 flight number decimal 20 不为空 航班号 Seat number decimal 20 不为空 座位号 Flight ticket type Varchar 50 不为空 机票类型 表 4.5 航班座位信息表 字段名 数据类型 长度 约束 描述 Seat number decimal 20 主键 座位号 Flight number decimal 20 不为空 航班号 Seat message varchar 50 不为空 座位信息 Flight ticket type varchar 50 不为空 机票类型 第五章 数据库的实施与运行 15 第五章 数据库的实施与运行 5.1 数据的载入 录入的结果,抓图,每个表一个图。 表 5.1 退票信息表 收录了 10位旅客的订单号,旅客姓名,电话号,身份证号。 大连交通大学数据库课程设计 16 表 5.2旅客表 收录了 10位旅客的旅客姓名,身份证号,电话号,性别,工作单位。 表 5.3 取票通知单表 第五章 数据库的实施与运行 17 收录了 10位旅客的旅客姓名,取票时间,航班号,座位号,机票类型。 表 5.4 航班座位信息表 收录了 10位旅客的座位号,航班号,座位信息,机票类型。 大连交通大学数据库课程设计 18 表 5.5 航班信息表 收录了 10位旅客的航班号,起飞地,目的地,起飞时间。 5.2 数据库的运行 抓一些查询结果的界面,至少五个,对每个查询的图,写出相应得查询语句。 一、 表 5.6对 cancellations_message表进行更新操作 表 5.7操作结果 第五章 数据库的实施与运行 19 二、 表 5.8对 flight_number表进行查询操作 表 5.9查询结果 三、 表 5.10对 flight_seat_message进行查询全部信息的操作 表 5.11查询结果 四、 表 5.12对 get_ticket_message进行插入操作 大连交通大学数据库课程设计 20 表 5.13插入结果 五、 表 5.14对 passager进行删除数据操作 表 5.15删除结果 总 结 21 总 结 通过这次的课程设计,基本把所学的理论知识和实际应用有了一定的结合。为巩 固所学的知识为以后的毕业设计打下了基础。本次数据库课程设计我设计的是机票预定 系统,首先要了解预定系统的需求分析,并根据需求分析把需求过程写清楚,进而画出 总体的数据流图,并根据数据流图划分出各个部分的功能。对总构架图进行细分直到无 法再分为止。概念结构设计阶段采用自底向上的方法,对已经细分的部分两个两个结合 最终结合成一个整体的结构图。画出 E-R 图并把 E-R 图转化为数据模型最后对数据模 型进行优化。以上这些都是理论方面,实际上建数据建容器建表插表也是一个复杂的过 程,本次实验以自己的名字建了一个表空间,之后建了几个容器,因为之前对实验了解 不够透彻所以在建容器时候有点混淆,最后也经过努力解决了。之后建五张表,因为表 名是一个单词,因此表名起成两个分立的单词就不对给以后的查询造成麻烦,列名之间 也要用一个下划线进行分割,要不然也会给以后更新工作产生很大影响。插入数据我运 用了 insert into values语句对各个表进行插入操作。最后在说明书中截取了 5个表的图 以及插入,删除,更新等操作的图片。 与其临渊羡鱼,不如退而结网。这次数据库课程设计给我的最大的印象就是如果 自己有了兴趣,就动手去做,困难在你的勇气和毅力下是抬不了头的。从做这个数据库 开始无论遇到什么困难,我都没有一丝的放弃的念头。出于对知识的渴望,出于对新技 术的好奇,出于对一切未知的求知。我完成了这次数据库课程设计,不过这只是我学习 路上的驿站,我会继续学习它,语言并不重要毕竟它仅仅是工具,用好一个工具并不是 一件值得为外人道的事情,主要是了解学习思想。古语说的好:学无止境啊! 大连交通大学数据库课程设计 22 参考文献 [1] 王珊,陈红·数据库系统原理教程·清华大学出版社,1998,7 [2] 克里克著施伯乐等译 数据库处理--基础、设计与实现 2001.3 [3] 杨开英 数据库系统概论 2003 1 [4] 刘易斯 著陈立军译 数据库系统面向应用的方法(第 2版) 2006 11 [5](美)微软公司|译者Microsoft SQL Server2000数据库编程 2001
/
本文档为【机票预订系统数据库案例】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索