机票预订系统 课程设计 数据库.docx | 您所在的位置:网站首页 › 机票预定系统分层数据流图 › 机票预订系统 课程设计 数据库.docx |
机票预订系统 课程设计 数据库.docx 《机票预订系统 课程设计 数据库.docx》由会员分享,可在线阅读,更多相关《机票预订系统 课程设计 数据库.docx(27页珍藏版)》请在冰豆网上搜索。 机票预订系统课程设计数据库 1概述 应用对数据库技术及应用的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。 实践和巩固在课堂教学中学习的关于数据库的有关知识,熟练掌握对于给定实训任务的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。 实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为将来在学习工作中的应用打下基础。 1.1课程实训目的与要求 课程实训的目的是: 本次课程实训的主要任务是运用在《数据库原理及应用》课程中学到的理论知识来指导实践,了解数据库设计过程及其实现方法,学会用数据库建模的方法解决实际问题。 掌握数据库原理、范式理论、规范化等相关知识,掌握数据库分析设计的具体步骤与基本方法,掌握SQL语言的基本语法和基本内容,并能运用SQLServer2005实现设计数据库,掌握SQLServer2005数据库、表、视图、约束、索引、存储过程、触发器的使用,利用一种前台开发工具实现数据库管理系统的开发,实现特定的业务功能。 通过综合课程实训,提高实践动手技能,培养独立分析分析问题和解决问题的能力。 课程实训的要求: 本次课程实训的选题比较灵活,可以是自主选题,也可以自己选择比较感兴趣的题目,重点是完成数据库的分析、设计与实现,题目要符合《数据库原理及应用》的要求,并且具备一定的难度和深度;除此以外,可以从备选题目之外选择一个题目完成。 1.2机票预订系统 在所给的实训题目中,我选择的是机票预订系统的设计。 1.2.1系统功能的基本要求 每个航班信息的输入; 每个航班的坐位信息的输入; 当旅客进行机票预定时,输入旅客基本信息,系统为旅客安排航班,打印取票通知和帐单; 旅客在飞机起飞前一天凭取票通知交款取票; 旅客能够退订机票; 能够查询每个航班的预定情况、计算航班的满座率。 1.2.2数据库要求 在数据库中至少应该包含下列数据表: 航班信息表; 航班坐位情况表; 旅客订票信息表; 取票通知表; 帐单。 2需求分析 2.1背景分析 随着社会发展的不断进步,民航事业的壮大,人们消费水平的提高,乘坐民航的消费者也越来越多,旅游也逐渐成为普通老百姓的生活组成部分,飞机票预定查询系统在各机票预定网点中的作用也越显重要。 目前,我国一些旅行社和酒店的机票预定还停留在人工处理阶段,这已经严重制约了工作效率,在计算机技术高速发展的今天,有必要引入高效的计算机系统,来协助处理机票预定工作。 因此,开发一套具有完整的存储,查询,核对,打印机票功能的实时机票预定系统势在必行。 机票预定系统是为机场工作人员和客户提供订票退票等与机票相关内容和管理的系统,它具有开放体系结构的、易扩充的、易维护的、具有良好人机界面的优点.它除克服了存储乘客信息少,查询效率低下等问题外,更重要的是其安全性,可靠性,实现航空公司的机票销售的自动化。 它为企业的决策层提供准确、精细、迅速的机票销售信息,为乘客出行提供方便,便于机场工作人员对机票信息进行管理,提高了机场工作人员对机票管理的工作效率。 2.2功能分析 经过综合分析,确定了机票预订系统主要包括以下功能: (1)航班信息管理功能 主要实现航班的一些基本信息,航班编号、票价、起飞地、目的地、起飞时间的添加、修改、删除和查询。 (2)航班座位信息管理功能 主要实现航班座位,也就是机票的一些基本信息,航班编号、座位号、座位信息、机票类型的添加、修改、删除和查询。 (3)旅客信息管理功能 此模块的主要实现旅客一些基本信息,姓名、性别、联系方式、证件号码、的查询功能。 (4)取票信息管理功能 此模块用于取票信息的管理,包括对航班基本信息,航班编号等,旅客基本信息,旅客姓名、座位号、取票时间的查询。 (5)退票信息管理功能 此模块用于退票信息的管理,包括对订单号、旅客姓名、联系方式、证件号码的查询。 2.3数据词典 经分析之后,本系统要用到五个基本表: 航班信息表,航班座位情况表,旅客订票信息表,取票和账单信息表,退票信息表。 数据结构定义如表: 数据结构名 含义说明 组成 航班信息表 定义了航班 的有关信息 航班号,起飞地,目的地,起飞时间,票价 航班座位情况表 定义了航班座位有关信息 航班号,座位号,座位信息,机票类型 旅客订票信息表 定义了旅客有关信息 旅客姓名,身份证号,性别,电话号 取票和账单信息表 定义了取票通知相关有关信息 旅客姓名,取票时间,航班号,座位号,机票类型 退票信息表 定义了退票旅客的有关信息 旅客姓名,身份证号,订单号,电话号 机票预订系统的主要数据字典如下: (1)航班信息 数据流来源: 航班管理 数据流去向: 航班安排 数据项组成: 航班号,起飞地,目的地,起飞时间,票价 (2)航班座位情况 数据流来源: 航班管理和订票情况 数据流去向: 旅客座位 数据项组成: 航班号,座位号,座位信息,机票类型 (3)旅客信息 数据流来源: 确定旅客信息后管理人员输入系统 数据流去向: 安排顾客的航班 数据项组成: 旅客姓名,身份证号,性别,电话号 (4)取票通知和账单信息 数据流来源: 打印取票通知和账单 数据流去向: 核对订票信息 数据项组成: 旅客姓名,取票时间,航班号,座位号,机票类型 (5)退票信息 数据流来源: 旅客退票申请 数据流去向: 订票信息申请退票 数据项组成: 旅客姓名,身份证号,订单号,电话号 3概念结构设计 3.1概念结构设计的方法与步骤 1.概念结构设计的方法 概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。 对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。 2.概念结构设计的步骤 第一步是进行局部视图的设计: 由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。 因此我们先逐一的设计分E-R图。 第二步是进行视图的集成: 各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。 我想采用一次集成两个分E-R图的方式。 3.2局部E-R图设计 根据需求分析抽象出信息结构,可得该系统的E-R图。 (1)航班信息E-R图,如图3.1所示。 图3.1航班信息E-R图
(2)航班座位信息E-R图,如图3.2所示。 图3.2机票信息E-R图
(3)旅客E-R图,如图3.3所示。
图3.3旅客E-R图
(4)取票通知E-R图,如图3.4所示。
图3.4取票通知E-R图
(5)退票信息E-R图,如图3.5所示。 图3.5退票信息E-R图 3.3总体概念E-R图结构 经过逐步细化再进行每两个一集成初步形成一个E-R图,最后得到图3.6总体概念结构E-R图。 图3.6系统总体结构E-R图 4逻辑结构设计 4.1逻辑结构设计 (1)E-R图向关系模型的转换 将图3.6总体概念结构E-R图转化成关系模型。 退票信息(订单号,旅客姓名,联系方式,证件号码) 旅客(旅客姓名,证件号码,联系方式,性别) 航班信息表(航班号,票价,起飞地,目的地,起飞时间) 取票通知单(旅客姓名,取票时间,证件号码,航班号,座位号) 机票信息表(座位号,航班号,座位信息,机票类型) (2)数据模型的优化 将转化的关系模式进行优化,最终达到第三范式。 ①确定数据依赖 退票信息(订单号,旅客姓名,联系方式,证件号码)根据这个关系写出数据依赖 订单号→旅客姓名,订单号→联系方式,订单号→证件号码 旅客(旅客姓名,证件号码,联系方式,性别) 旅客姓名→证件号码,旅客姓名→联系方式,旅客姓名→性别 航班信息表(航班号,票价,起飞地,目的地,起飞时间) 航班号→起飞地,航班号→票价,航班号→目的地,航班号→起飞时间 取票通知单(旅客姓名,取票时间,航班号,座位号) 旅客姓名→取票时间,旅客姓名→航班号,旅客姓名→座位号, 机票信息表(座位号,航班号,座位信息,机票类型) (座位号,航班号)→舱位类型,(座位号,航班号,座位信息)→机票类型 ②对各关系模式间数据依赖进行极小化处理,消除冗余 订单号→旅客姓名,订单号→联系方式,订单号→证件号码 旅客姓名→性别,旅客姓名→取票时间,旅客姓名→航班号,旅客姓名→座位号,旅客姓名→机票类型 航班号→起飞地,航班号→目的地,航班号→起飞时间 (座位号,航班号)→座位信息 ③看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解 最终分解成第三范式: (订单号,联系方式,证件号码)(订单号,旅客姓名)(旅客姓名,取票时间,性别,机票类型)(旅客姓名,航班号)(旅客姓名,座位号)(航班号,座位号,票价)(航班号,起飞地,目的地,起飞时间) (3)数据库的结构 根据总体结构图设计机票预定系统基本表结构,其相应标的定义如下: 表4-1航班信息系统的结构 字段名 数据类型 长度 约束 描述 flightnumber decimal 主键 航班号 takeoffplace varchar 50 不为空 起飞地 destination varchar 50 不为空 目的地 flighttime time 不为空 起飞时间 price int 不为空 票价 表4-2航班座位信息表 字段名 数据类型 长度 约束 描述 seatnumber decimal 主键 座位号 flightnumber decimal 不为空 航班号 seatmessage varchar 50 不为空 座位信息 flighttickettype varchar 50 不为空 机票类型 表4-3旅客信息系统的结构 字段名 数据类型 长度 约束 描述 passagername varchar 50 主键 旅客姓名 id decimal 不为空 身份证号 telephonenumber decimal 不为空 联系方式 sex varchar 50 不为空 性别 表4-4取票和账单信息系统的结构 字段名 数据类型 长度 约束 描述 passagername varchar 50 主键 旅客姓名 gettickettime time 不为空 取票时间 flightnumber decimal 不为空 航班号 seatnumber decimal 不为空 座位号 flighttickettype varchar 50 不为空 机票类型 表4-5退票信息系统的结构 字段名 数据类型 长度 约束 描述 orderform decimal 主键 订单号 passagername varchar 50 不为空 旅客姓名 telephonenumber decimal 不为空 联系方式 id varchar 50 不为空 证件号码
4.2数据库表的建立 根据数据库的基本表结构分别建立5 |
CopyRight 2018-2019 实验室设备网 版权所有 |