ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:376.75KB ,
资源ID:9794954      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9794954.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(机票预定系统数据库设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

机票预定系统数据库设计.docx

1、机票预定系统数据库设计 数据库课程设计任务书题 目 机票预定系统数据库设计数据库的设计与实现 起讫日期 2009年12月28日至 2010年1月13日 学生姓名 马楠 专业班级学号 R英语073班12号 所在院系 软件学院 指导教师 李媛媛 职称 讲师 所在单位 软件开发与测试教研室 2009年12月27日 摘 要随着社会发展的不断进步,民航事业的壮大,人们消费水平的提高,乘坐民航的消费着也越来越多,预定查询系统因此在各机票预定网点中的作用也越显重要,因此,开发一套具有完整的存储,查询,核对,打印机票功能的实时机票预定系统更现紧迫。机票预定系统应克服存储乘客信息少,查询效率低下等问题外,更重要

2、的是其安全性,可靠性,这关系到航班和乘客的安全及准确,本系统因面向广大机票预定网点,因此要能在售票网点中普及,则需要开发一个功能全,价格能被顾客所接受的系统。关键字:机票预定系统;订票系统;退定系统;航班查询第一章 引言 鉴于飞机对安全性要求较高,如何提高机票订购效率,而且也要保证整个航班的安全性,对机票预定系统的研究有很必要。1.1 课题简介目前社会已经进入一个高速运作的时代,在交通方面要求更高,时间概念很强,为了满足人们这一要求,各个交通部门都在研发更加方便,快捷的业务办理方式。在航空方面,对业务办理要求更高,更严。因此,就机票预定系统的研发是很重要的,目的在于开发出一个更有效,安全性更好

3、的系统。1.2 设计目标与任务机票预定系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。主要任务是进行底层数据库设计,这是整个系统开发的关键之处。第二章 需求分析2.1 需求分析的任务充分了解客户的需求,以及整个预定业务的流程,仔细分析各个子系统,做好各个子系统之间数据如何传送等问题,形成需求分析说明书。主要从处理对象、功能分析和安全性以及完整性三个方面去开展研究。并要求客户机的界

4、面要简单明了,易于操作,服务器程序利于维护。2.2 需求分析的过程2.2.1处理对象分析机票预定系统主要是针对客户而言的,至于客户是通过何种方式去预定,对此并没有做更深入的研究。总的来讲,机票预定系统要处理的对象就是客户信息和系统信息。细分后就是订票信息、退票信息、查询信息以及有关部门的通缉信息。对每个信息都有相应的数据,个信息之间数据都存在一定的关系。就订票信息涉及数据说明如下:航班号(HBID)、乘客姓名(LKName)、乘客证件号(LKID)、订票数(JYSL)等等 。2.2.2具体功能分析机票预定系统有三个子系统组成:订票系统、查询系统和退票系统,分别对应了订票功能、退票功能和查询功能

5、。订票功能中要有航班审查和身份验证,要有这两个处理过程,最后,登记领取取票凭证;退票功能实现比较简单,只要检验是否是可退机票即可,在退票过后要对订票信息作修改,这是该功能中最重要的一点;查票功能设计起来比较简单,但它的功能十分强大,以后对不同的查询需求都要有相应的处理结果,对此阶段没有更进一步的研究,具体功能实现还有待完善。2.2.3安全性和完整性要求分析为了保证航班信息不会出现重大差错,业务员只能由售票和查询机票的权限,对于航班信息更改的权限要给航空公司的主管。整个机票预定系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独

6、立运行,而通过人工干预的手段进行系统数据的交换。这样,也能提供系统的强壮性,对安全性也有一定的帮助。由于系统的数据是共享的,在不同的预定地点,机票是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据。2.3 需求分析阶段阶段成果2.3.1业务流程分析经过可行性分析和初步需求调查,抽象出该系统业务流程图。 图2-1 业务流程图 (1)查询处理名称:机票查询输入:查询航班信息输出:查询结果

7、 处理:在所涉及的表中查询所需记录(2)订票处理名称:机票订购输入:输入订票信息输出:订票结果处理:如果成功,对相应的数据进行更改,否则不修改(3)退票处理名称:机票退订输入:机票信息 输出:退票结果处理:如果退定成功,对相应的数据进行修改,否则不修改2.3.2数据字典(1)数据项 表2-1 数据项数据项数据项含义数据类型宽度与其他数据项的逻辑关系可否为空值是否为主(P)/外(F)键HBID航班号char10NOYES(P)JX航班名称char10NOMDD航班目的地char10NOCFD航班出发地char10NOJG票价int8QFSJ起飞时间timeNODDSJ到达时间timeNOHARQ

8、航班日期dateYS剩余票数int4LKID旅客身份证char21NOYES(P)LKTEL旅客联系电话char15LKSEX旅客性别char4NOLKNAME旅客姓名char12NOJYSL交易数量Int3JYLX交易类型char4NOJYZE交易总额float8订票数*单张票价NOYZZT验证状态char4NOTJID嫌疑人证件号char21NOYES(P)TJNAME嫌疑人名char12NOTJSex嫌疑人性别char2NO(2)数据结构 表2-2 数据结构数据结构名含义说明组成旅客信息旅客的个人信息,用于对旅客的确认旅客证件号,旅客姓名,旅客性别,旅客联系电话旅客订票信息已订票的旅客的

9、记录旅客证件号,航班号,订票数量,取票状态航班信息旅客的航班信息,根据旅客的旅行时间和目的地确定航班号,飞机型号,航班状态,航班目的地,航班时间,票价,额定人数,余票数交易信息订票/退票结果旅客证件号,航班号,交易类型,交易总额 验证信息身份验证的信息验证状态,嫌疑人证件号,旅客证件号第三章 概念结构设计3.1 概念结构设计的方法与步骤1 概念结构设计的方法概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。2 概念结构设计的步骤第一步是进行局部视图的设计:由于高层的数据流图只能反映系

10、统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。因此我们先逐一的设计分E-R图。 第二步是进行视图的集成:各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。我想采用一次集成两个分E-R图的方式。 3.2数据抽象与局部视图设计 (1)订票子系统E-R图 图3-1订票子系统E-R图 (2)退票子系统E-R图 图3-2退票子系统E-R图(3)旅客验证E-R图 图3-3 旅客验证E-R图3.3视图的集成经过逐步细化再进行每两个一集成初步形成一个E-R图 图3-4 整体E-R图 实体

11、与联系的属性如下:航班:航班号,飞机型号,航班出发地,航班目的地,起飞时间,到达时间,票价,余票数旅客:旅客证件号,旅客姓名,旅客性别,旅客联系电话订票:交易编号,交易类型,交易数量,总额 退票:交易编号,交易类型,交易数量,总额 通缉单:嫌疑人证件号,嫌疑人名,备注验证:嫌疑人证件号,旅客证件号,验证状态第四章 逻辑结构设计概念设计完成后,获得的是各个实体之间的抽象联系,要将它与具体的DBMS向结合,则必须要将E-R图转化为具体的数据模型,这就是逻辑设计的目标。其任务就是转化为什么样的数据模型,以及如何转化的完善些,对转化结果进行更进一步的优化。4.1 E-R图转化为关系模型转化结果如下:航

12、班:航班号,飞机型号,航班出发地,航班目的地,起飞时间,到达时间,票价,余票数旅客:旅客证件号,旅客姓名,旅客性别,旅客联系电话交易:交易编号,旅客证件号,航班号,交易类型,交易数量,交易状态,交易总额验证:旅客证件号,嫌疑人证件号,验证状态 说明:“航班号”表示主码,“旅客证件号”表示外码,“旅客姓名”表示一般属性各个关系中不存在插入异常,删除异常和大量冗余,而且每个关系的没个属性都是不可再分割的,既满足1NF,对于每一个非主属性完全函数依赖与码,而且在每个关系中没有传递函数以来关系,即满足2NF以及3NF。4.2数据模型的优化 1.将转化的关系模式进行优化,最终达到第三范式。 (1)航班(

13、航班号,飞机型号,航班出发地,航班目的地,起飞时间,到达时间,票价,余票数) 航班号飞机型号,航班号航班出发地,航班号航班目的地,航班号起飞 时间,航班号到达时间,航班号票价,航班号余票数(2)旅客(旅客证件号,旅客姓名,旅客性别,旅客联系电话) 旅客证件号旅客姓名,旅客证件号旅客性别,旅客证件号旅客联系电话(3)交易(交易编号,旅客证件号,航班号,交易类型,交易数量,交易状态,交易总额) 交易编号旅客证件号,交易编号航班号,交易编号交易类型,交易编号交易数量,交易编号交易状态,交易编号交易总额 (4)验证(旅客证件号,嫌疑人证件号,验证状态 ) 旅客证件号嫌疑人证件号,旅客证件号验证状态 2

14、.对各关系模式间数据依赖进行极小化处理,消除冗余航班号飞机型号,航班号航班出发地,航班号航班目的地,航班号起飞时间,航班号到达时间,航班号票价,航班号余票数,旅客证件号旅客姓名,旅客证件号旅客性别,旅客证件号旅客联系电话,交易编号旅客证件号,交易编号航班号,交易编号交易类型,交易编号交易数量,交易编号交易状态,交易编号交易总额,旅客证件号嫌疑人证件号,旅客证件号验证状态3.看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解 最终分解成第三范式:(航班号,飞机型号,航班出发地,航班目的地,起飞时间,到达时间,票价,余票数)(旅客证件号,旅客姓名,旅客性别,旅客联系电话)(交易编号,旅客

15、证件号,航班号,交易类型,交易数量,交易状态,交易总额)(旅客证件号,嫌疑人证件号,验证状态 )4.3数据库的结构根据总体结构图设计各表的结构,其相应标的定义如下(1)航班关系表 表4-1 航班关系表属性属性说明数据类型宽度是否为空值是否为主(P)/外键(F)HBID航班号char10NOYES(P)JX飞机型号char10NOCFD航班始发地char10NOMDD航班目的地char10NOQFSJ起飞时间timestampNODDSJ到达时间timestampNOHARQ航班日期dateNOJG票价intNOYS余票数intNO(2)旅客关系表 表4-2 旅客关系表属性属性说明数据类型宽度是

16、否为空值是否为主(P)/外键(F)LKID旅客证件号char21NOYES(P)LKName旅客姓名char12NOLKSex旅客性别char4LKTEL旅客联系电话char15(3)交易关系表 表4-3 交易关系表属性属性说明数据类型宽度是否为空值是否为主(P)/外键(F)LKID旅客证件号char21NOYES(F)HBID航班号char10NOYES(F)JYLX交易类型char10NOJYTZ交易状态char10NOJYSL交易数量int3JYZE交易总额int4NO(4)验证关系表表4-4 验证关系表属性属性说明数据类型宽度小数点是否为空值是否为主(P)/外键(F)LKID旅客证件号

17、char18NOYES(F)YZZT验证状态char4NOTJID嫌疑人证件号char18NOYES(F)(5)嫌疑人关系表表4-5 嫌疑人关系表属性属性说明数据类型宽度小数点是否为空值是否为主(P)/外键(F)TJID嫌疑人证件号char21NOYES(P)TJSex嫌疑人性别char2TJName嫌疑人名char12NO4.3.2 完整型与安全性设计(1)交易数量不得大于余票数(2)交易类型分为:前台交易和网上交易;(3)交易状态分为:订票和退票;4.4功能模块图 图4-1 功能模块图 第五章 数据库物理设计5.1 实例及数据库的创建.用自己的名字创建实例YY03MN,创建数据库MN12.

18、5.2索引的建立先给出索引的相关定义,然后自己选择表或者属性建立索引(唯一索引、聚簇索引),要求表和索引存储在不同的表空间里,写出相关的SQL语句。索引就是加快检索表中数据的方法。数据库的索引类似于书籍的索引。在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息。在数据库中,索引也允许数据库程序迅速地找到表中的数据,而不必扫描整个数据库。 (1) 建立唯一索引 Create unique index 起飞时间 on 航班关系表 (QFSJ); (2)建立聚簇索引 CONNECT TO MN12; CREATE INDEX ADMINISTRATOR.验证 ON ADMINISTRA

19、TOR.验证关系表 (LKID ASC) CLUSTER PCTFREE 10 ALLOW REVERSE SCANS PAGE SPLIT SYMMETRIC COLLECT SAMPLED DETAILED STATISTICS ;CONNECT RESET;5.3 表空间的建立给出表空间的相关定义,然后建立需要用到的表空间(至少2个以上,存放在目录容器和文件容器中),写出相关的SQL语句。表空间的相关定义:表空间是数据库和储存在数据库中的表之间的逻辑层,数据库中的所有对象都储存在表空间中。创建表空间 connect to MN12;create regular tablespace dm

20、s02 managed by database using (file c:dmsdms02 14) extentsize 2;create long tablespace dms03 managed by database using (file c:dmsdms03 728) extentsize 8; create regular tablespace dms04 managed by database using (file c:dmsdms04 22) extentsize 2; create regular tablespace dms05 managed by database

21、using (file c:dmsdms05 16) extentsize 2;create regular tablespace dms06 managed by database using (file c:dmsdms0640) extentsize 4; create regular tablespace sms01 managed by system using (d:smssms01,c:smssms02) extentsize 4;5.4 触发器的建立 触发器的建立实现在一定日期内订飞机票有7折的优惠CONNECT TO MN12CREATE TRIGGER ADMINISTRA

22、TOR.航班关系表 AFTER UPDATE OF JG ON ADMINISTRATOR.航班关系表 REFERENCING NEW AS n FOR EACH ROW MODE DB2SQL WHEN ( n.HARQ between 2010-1-1 and 2010-1-30)BEGIN ATOMICinsert into 航班关系表 (JG )values (JG*0.7);ENDCONNECT RESET第六章 数据库的实施数据库的具体实施以及运行,如下列图所示:1.表的建立与数据的载入 (1)航班关系表 图6-1 航班关系表(2)旅客关系表 图6-2 旅客关系表(3)交易关系表

23、图6-3 交易关系表 (4)嫌疑人关系表 图6-4 嫌疑人关系表(5)验证关系表 图6-5 验证关系表2.插入数据(1)向嫌疑人关系表中插入数据 图6-6 对嫌疑人关系表进行插入操作 插入数据后的结果 图6-7 对嫌疑人关系表进行插入操作后结果(2)向旅客关系表中插入数据 图6-8 对旅客关系表进行插入操作 插入数据后的结果 图6-9 对旅客关系表进行插入操作的结果(3)向航班关系表中插入数据 图6-10 对航班关系表进行插入操作插入数据后的结果 图6-11 对航班关系表进行插入操作的结果3.删除数据删除嫌疑人关系表中欧阳 图 6-12 删除嫌疑人关系表中欧阳操作删除后的结果 图 6-13 删

24、除嫌疑人关系表中欧阳的结果4.查询操作(1)对某位旅客进行查询 图 6-14 对某为旅客进行的查询操作 查询后的结果 图 6-15 对某为旅客进行的查询操作的结果(2)查询当日的航班 图 6-16 对当日航班的查询操作查询结果 图 6-17 对当日航班的查询操作的结果(3)退票查询 图 6-18 对退票进行查询操作查询结果 图 6-19 对退票进行查询操作的结果(4)订票查询 图 6-20 对订票进行查询操作查询结果 图 6-21 对订票进行查询操作的结果5.更改操作(1)退票操作 图 6-22 进行退票操作操作后的结果 图 6-23 进行退票操作的结果(2)订票操作 图 6-24 进行订票操

25、作操作后的结果 图 6-25 进行订票操作的结果(交易关系表) 图 6-26 进行订票操作的结果(旅客关系表) 总 结 连续两周的机票预定系统设计感受最深的就是机票预定比其他交通工具预定要复杂的多,严格的多。订飞机票必须通过身份验证,而订火车票你可以不拿任何凭证。还有就是登机过程也比较复杂,在登机前拿机票去换取登机座位卡,以这张卡就可以去登机,而且你的座位是在这时候才可以确定的,座位的前后由你前来换登机卡的时间有关,与买票时间无关。这对本系统关系并不是很大,不过有一定的关系,比如系统在打印帐单的时候就不需要再打座位号了,因为这不是系统要做的事。由于能力问题以及时间限制,该系统的分析还很不到位,有很多的问题没有解决好,比如旅客是通过旅行社来订票的,这样订票的信息有可能会有些变化。对此,该系统并不做更深的研究,目前只是为了满足最一般的需求而设计的。参考文献1 王珊,陈红数据库系统原理教程清华大学出版社,1998,72 杨鑫华 数据库原理与DB2应用教程 清华大学出版社 2007,8 3 岳昆 数据库技术-设计与应用实例 清华大学出版社 4 严晖 刘卫国 数据库技术-设计与应用实践教程SQL Server清华大学出版社5 刘卫国 数据库技术与应用SQL Server清华大学出版社

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1