您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > 机票预订系统课程设计数据库
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逻辑结构设计nnn11mn退票信息航班信息旅客购买包含退票取票通知和账单航班座位信息购买1姓名性别身份证号电话号起飞时间航班编号目的地起飞地票价航班编号座位号机票类型座位信息码航班编号旅客姓名座位号取票时间订单号旅客姓名身份证号码电话号机票类型4.1逻辑结构设计�1�E-R图向关系模型的转换将图3.6总体概念结构E-R图转化成关系模型。退票信息�订单号�旅客姓名�联系方式�证件号码�旅客�旅客姓名�证件号码�联系方式�性别)航班信息表�航班号�票价�起飞地�目的地�起飞时间�取票通知单�旅客姓名�取票时间�证件号码�航班号�座位号�机票信息表�座位号�航班号�座位信息�机票类型��2�数据模型的优化将转化的关系模式进行优化�最终达到第三范式。①确定数据依赖退票信息�订单号�旅客姓名�联系方式�证件号码�根据这个关系写出数据依赖订单号→旅客姓名�订单号→联系方式�订单号→证件号码旅客�旅客姓名�证件号码�联系方式�性别)旅客姓名→证件号码�旅客姓名→联系方式�旅客姓名→性别航班信息表�航班号�票价�起飞地�目的地�起飞时间�航班号→起飞地�航班号→票价�航班号→目的地�航班号→起飞时间取票通知单�旅客姓名�取票时间�航班号�座位号�旅客姓名→取票时间�旅客姓名→航班号�旅客姓名→座位号�机票信息表�座位号�航班号�座位信息�机票类型��座位号�航班号�→舱位类型��座位号�航班号�座位信息�→机票类型②对各关系模式间数据依赖进行极小化处理�消除冗余订单号→旅客姓名�订单号→联系方式�订单号→证件号码旅客姓名→性别�旅客姓名→取票时间�旅客姓名→航班号�旅客姓名→座位号�旅客姓名→机票类型航班号→起飞地�航班号→目的地�航班号→起飞时间�座位号�航班号�→座位信息③看这些模式是否符合要求�确定是否要对某些模式进行合并或者分解最终分解成第三范式��订单号�联系方式�证件号码��订单号�旅客姓名��旅客姓名�取票时间�性别�机票类型��旅客姓名�航班号��旅客姓名�座位号��航班号�座位号�票价��航班号�起飞地�目的地�起飞时间��3�数据库的结构根据总体结构图设计机票预定系统基本表结构�其相应标的定义如下�表4-1航班信息系统的结构字段名数据类型长度约束描述flightnumberdecimal主键航班号takeoffplacevarchar50不为空起飞地destinationvarchar50不为空目的地flighttimetime不为空起飞时间priceint不为空票价表4-2航班座位信息表字段名数据类型长度约束描述seatnumberdecimal主键座位号flightnumberdecimal不为空航班号seatmessagevarchar50不为空座位信息flighttickettypevarchar50不为空机票类型表4-3旅客信息系统的结构字段名数据类型长度约束描述passagernamevarchar50主键旅客姓名iddecimal不为空身份证号telephonenumberdecimal不为空联系方式sexvarchar50不为空性别表4-4取票和账单信息系统的结构字段名数据类型长度约束描述passagernamevarchar50主键旅客姓名gettickettimetime不为空取票时间flightnumberdecimal不为空航班号seatnumberdecimal不为空座位号flighttickettypevarchar50不为空机票类型表4-5退票信息系统的结构字段名数据类型长度约束描述orderformdecimal主键订单号passagernamevarchar50不为空旅客姓名telephonenumberdecimal不为空联系方式idvarchar50不为空证件号码4.2数据库表的建立根据数据库的基本表结构分别建立5个基本表��1�创建航班信息表�2�创建航班座位信息表�3�创建旅客信息表�4�创建取票和账单信息表�5�创建退票信息表5物理结构设计数据库物理设计是指设计出数据库的物理数据模型�它是数据库在物理设备上的具体实现�即数据库服务器物理空间上的表空间、表、字段、索引、视图、存储过程、触发器以及相应的数字字典的设计。经过数据库的需求分析和概念模型设计�得到数据库的逻辑结构�现在可以设计好的逻辑结构在SQLserver中建立数据库及数据库的数据表。5.1表的建立与数据载入需要明确数据库需要建立几张表�以及每个表中所要包括的属性。在建立表的过程中。要对每个表进行字段属性的设置。�至少包括5张表�每个表都有主键�根据实际情况�建立视图�在机票预订系统中�主要建立了5个表�分别是�航班信息表�航班座位情况表�旅客订票信息表�取票和账单信息表�退票信息表。5.2视图建立视图是查看数据库表中数据的一种方式。视视图提供了存储预定义的查询语句作为数据库中的对象以备以后使用的能力。视图是一种逻辑对象�是一种虚拟表。在机票预订系统中�我建立了两个视图。分别是航班和座位视图和旅客和取票信息视图。他们分别通过飞机编号也就是flightnum
本文标题:机票预订系统课程设计数据库
链接地址:https://www.777doc.com/doc-4814228 .html