机票预订系统数据库课程设计说明书Word文档下载推荐.docx
- 文档编号:20252234
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:20
- 大小:663.06KB
机票预订系统数据库课程设计说明书Word文档下载推荐.docx
《机票预订系统数据库课程设计说明书Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《机票预订系统数据库课程设计说明书Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
1.2设计目的
应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。
实践和巩固在课堂教学中学习的关于DB2的有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。
实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
1.3设计内容
选择课题并且对课题的相关信息有一定的了解,对于我选的课题来说,我必须了解机票预定系统的构造以及购票人的信息还有机票的相关信息。
通过这些信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。
要把查询结果与过程抓几张图。
第二章需求分析
2.1需求分析的任务
调查机票预定系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操作要求进行详细分析,形成需求分析说明书。
最重要的是调查、收集信息、分析购票人信息和飞机预定流程。
处理要求、数据的安全性与完整性要求。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。
2.2需求分析的过程
航空公司为方便旅客,需开发一个机票预定系统。
为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。
旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。
如果某方面出现问题,旅客可以持有效证件去飞机场退票。
2.3数据字典与流程图
1.业务流程分析
经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出旅客信息、订票信息和取票通知的具体需求。
图2.1旅客购票流程图
⑴调查用户需求
①机场办公需求
●功能:
旅客持个人证件去机场购买机票。
希望能通过旅客姓名查到该旅客的飞机编号并记录旅客基本信息。
●
●统计功能:
◆按机票统计买票人数
◆
◆按姓名统计机票数
②旅客购票需求
●交费功能:
◆交费
◆退费
③取票需求
●通知功能:
◆通知旅客取票
◆统计通过验证的人数
◆统计可以取票的人
◆统计未通过验证的人数
●查询功能:
◆购票旅客查询
购票旅客姓名
购票旅客身份证号
购票旅客订单号
④航班信息需求
◆航班号
◆起飞地
◆目的地
◆起飞时间
2.系统模块分析
在调查完了用户需求之后,就要开始分析用户需求。
在此,我们采用自顶向下的结构化分析方法(SA方法)。
首先,定义全局概念结构的框架,如图2.2所示。
图2.2机票预定系统总框架图
各子系统需要进一步细化。
旅客信息系统为例进一步细化,如图2.3所示。
图2.3旅客信息系统细化
以其中的查询旅客信息功能为例进一步细化,如图2.4所示。
图2.4查询旅客信息功能
图2.5旅客信息系统细化
图2.6取票通知系统细化
图2.7旅客信息系统能查询到的内容
图2.8机票信息系统能查询到的内容
图2.9退票信息系统细化
3.数据字典
将所有子系统全部细化。
将所有用户需求分析完毕之后,就要开始构造数据字典了。
经分析之后,本系统要用到五个基本表:
退票信息表,旅客信息表,航班信息表,取票通知单,航班座位信息表。
数据结构定义如表2.1所示。
表2.1数据结构定义
数据结构名
含义说明
组成
退票信息
定义了退票旅客的有关信息
旅客姓名,身份证号,订单号,电话号
旅客
定义了旅客有关信息
旅客姓名,身份证号,性别,
工作单位,电话号
航班信息表
定义了航班
的有关信息
航班号,起飞地,目的地,起飞时间
取票通知单
定义了取票通知相关有关信息
旅客姓名,取票时间,航班号,座位号,机票类型
航班座位息表
定义了航班座位有关信息
航班号,座位号,座位信息,机票类型
第三章概念结构设计
3.1概念结构设计的方法与步骤
1.概念结构设计的方法
概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。
对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。
2.概念结构设计的步骤
第一步是进行局部视图的设计:
由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。
因此我们先逐一的设计分E-R图。
第二步是进行视图的集成:
各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。
我想采用一次集成两个分E-R图的方式。
3.2数据抽象与局部视图设计
按照图2.2机票预定系统总框架图,设计实体属性图以及局部E-R图。
图3.1退票信息实体属性图
图3.2旅客实体属性图
……….
图3.3旅客购票局部E-R图
……
3.3视图的集成
经过逐步细化再进行每两个一集成初步形成一个E-R图,最后得到图3.4总体概念结构E-R图。
图3.4系统总体结构E-R图
第四章逻辑结构设计
4.1E-R图向关系模型的转换
将图3.4总体概念结构E-R图转化成关系模型。
退票信息(订单号,旅客姓名,电话号,身份证号)
旅客(旅客姓名,身份证号,电话号,性别,工作单位)
航班信息表(航班号,起飞地,目的地,起飞时间)
取票通知单(旅客姓名,取票时间,航班号,座位号,机票类型)
航班座位信息表(座位号,航班号,座位信息,机票类型)
4.2数据模型的优化
将转化的关系模式进行优化,最终达到第三范式。
1、确定数据依赖
退票信息(订单号,旅客姓名,电话号,身份证号)根据这个关系写出数据依赖
订单号→旅客姓名,订单号→电话号,订单号→身份证号
旅客姓名→身份证号,旅客姓名→电话号,旅客姓名→性别,旅客姓名→工作单位
航班信息表(航班号,起飞地,目的地,起飞时间)
航班号→起飞地,航班号→目的地,航班号→起飞时间
取票通知单(旅客姓名,取票时间,航班号,座位号,机票类型)
旅客姓名→取票时间,旅客姓名→航班号,旅客姓名→座位号,
旅客姓名→机票类型
航班座位信息表(座位号,航班号,座位信息,机票类型)
(座位号,航班号)→座位信息,(座位号,航班号,座位信息)→机票类型
2、对各关系模式间数据依赖进行极小化处理,消除冗余
3、
订单号→旅客姓名,订单号→电话号,订单号→身份证号,旅客姓名→性别
旅客姓名→工作单位,旅客姓名→取票时间,旅客姓名→航班号
旅客姓名→座位号,旅客姓名→机票类型,航班号→起飞地,航班号→目的地
航班号→起飞时间,(座位号,航班号)→座位信息
4、看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解
5、
最终分解成第三范式:
(订单号,电话号,身份证号)(订单号,旅客姓名)(旅客姓名,取票时间,性别,工作单位,机票类型)(旅客姓名,航班号)(旅客姓名,座位号)(航班号,座位号,机票类型)(航班号,起飞地,目的地,起飞时间)
4.3数据库的结构
给出机票预定系统基本表结构图。
图4.1各表的结构
根据总体结构图设计各表的结构,其相应标的定义如下:
表4-1旅客信息系统的结构
字段名
数据类型
长度
约束
描述
passagername
varchar
50
主键
旅客姓名
id
decimal
不为空
身份证号
telephonenumber
电话号
sex
性别
workdepartment
Varchar
工作单位
表4-2退票信息系统的结构
orderform
订单号
表4-3航班信息表系统的结构
Flightnumber
航班号
Takeoffplace
起飞地
destination
目的地
Flighttime
time
起飞时间
表4.4取票通知单系统的结构
passagername
Gettickettime
取票时间
flightnumber
Seatnumber
座位号
Flighttickettype
机票类型
表4.5航班座位信息表
Seatmessage
座位信息
第五章数据库物理设计
5.1索引的建立
先给出索引的相关定义,然后自己选择表或者属性建立索引(唯一索引、聚簇索引),要求表和索引存储在不同的表空间里,写出相关的SQL语句。
5.2表空间的建立
给出表空间的相关定义,然后建立需要用到的表空间(至少2个以上,存放在目录容器和文件容器中),写出相关的SQL语句。
第六章数据库的实施
6.1系统实验要求
建立三个用户:
user1,user2,user3
(1)使第一个用户user1和db2admin一起成为admin组的成员,使admin具有SYSADM的权限。
(2)使第二个用户user2拥有DBADM的权限。
(3)将创建的表之一上的所有特权授予给自己建立的用户user3。
6.2触发器的设计
根据应用要求,设计一个触发器。
6.3表的建立与数据的载入
需要明确数据库需要建立几张表,以及每个表中所要包括的属性。
在建立表的过程中。
要对每个表进行字段属性的设置。
(至少包括6张表,每个表都有主键,设必要的外键;
根据实际情况,设计一个Check约束;
至少建立一个视图)
6.4数据库的运行
1.建立的基本表
每个基本表一个抓图。
图6.1退票信息表
收录了10位旅客的订单号,旅客姓名,电话号,身份证号。
图6.2旅客表
收录了10位旅客的旅客姓名,身份证号,电话号,性别,工作单位。
图6.3取票通知单表
收录了10位旅客的旅客姓名,取票时间,航班号,座位号,机票类型。
图6.4航班座位信息表
收录了10位旅客的座位号,航班号,座位信息,机票类型。
图6.5航班信息表
收录了10位旅客的航班号,起飞地,目的地,起飞时间。
2.数据库的查询
抓一些查询结果的界面,至少五个,对每个查询的图,写出相应得查询语句。
图6.6对cancellations_message表进行更新操作
图6.7操作结果
图6.8对flight_number表进行查询操作
图6.9查询结果
图6.10对flight_seat_message进行查询全部信息的操作
图6.11查询结果
图6.12对get_ticket_message进行插入操作
图6.13插入结果
图6.14对passager进行删除数据操作
图6.15删除结果
总结
参考文献
[1]杨鑫华,赵慧敏等.数据库原理与DB2应用教程[M].清华大学出版社,2007.8
[2]王珊,陈红.数据库系统原理教程[M].清华大学出版社,1998.7
[3](美)希伯尔沙茨.数据库系统概念[M].机械工业出版社,2008
[4]李志伟.DB2基础教程[M].清华大学出版社,2003.2
[5]程勇等.DB2V9权威指南[M].电子工业出版社,2009
[6]牛新庄.循序渐进DB2——DBA系统管理、运维与应用案例[M].清华大学出版社,2009
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机票 预订 系统 数据库 课程设计 说明书