数据库课程设计机票预定系统.doc_第1页
数据库课程设计机票预定系统.doc_第2页
数据库课程设计机票预定系统.doc_第3页
数据库课程设计机票预定系统.doc_第4页
数据库课程设计机票预定系统.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大连交通大学数据库课程设计课程名称:数据库原理课程代码:题 目:机票预定系统年级/专业/班:学生姓名:学 号:指导老师:开题时间:完成时间:2009年6月18日摘 要为了更好的巩固和加强书本所学的知识,把所学的东西转化为实际应用。我们学习了IBM DB2应用程序的使用。并应用了SQL语言。对数据库的创建、修改、删除方法有了一定的了解。通过导入表和删除表、更改表学会了对于表的一些操作。为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。 当人们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽取有用的信息。当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好的利用这些数据资源。 通过机票预定系统的构造以及购票人的信息还有机票的相关信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。需求分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。逻辑结构设计阶段要把E-R图转化为关系模式并且把我输入的五张表结合在一起完成一个总关系表。最后就是要运行和实施数据库。要把查询结果与过程抓几张图关键词:SQL语言;IBM DB2;数据库设计;机票预定系统目录第一章 绪论21.1课题简介21.2设计目的21.3设计内容2第二章 需求分析32.1 需求分析的任务32.2 需求分析的过程32.3数据字典与流程图3第三章 概念结构设计83.1 概念结构设计的方法与步骤83.2 数据抽象与局部视图设计83.3视图的集成9第四章 逻辑结构设计104.1 E-R图向关系模型的转换104.2 数据模型的优化104.3 数据库的结构11第五章 数据库物理设计145.1 索引的建立145.2 表空间的建立14第六章 数据库的实施156.1系统实验要求156.2触发器的设计156.3表的建立与数据的载入156.4 数据库的运行15总 结21参考文献22第一章 绪论1.1课题简介随着时代的发展,计算系软件和系统的成熟,机票如果简单方面预定成为一个影响多数人生活的问题。而建立机票预定系统是一个很好的解决办法。经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系实际的宗旨,通过学校提供的这次课程设计实践的机会,在指导教师的帮助下,历经两周时间,我自行设计一套机票预定管理系统,在下面的各章中,我将以这套机票预定系统信息系统为例,谈谈其开发过程和所涉及到的问题。1.2设计目的应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。实践和巩固在课堂教学中学习的关于DB2的有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。1.3设计内容选择课题并且对课题的相关信息有一定的了解,对于我选的课题来说,我必须了解机票预定系统的构造以及购票人的信息还有机票的相关信息。通过这些信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。需求分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。逻辑结构设计阶段要把E-R图转化为关系模式并且把我输入的五张表结合在一起完成一个总关系表。最后就是要运行和实施数据库。要把查询结果与过程抓几张图。第二章 需求分析2.1 需求分析的任务调查机票预定系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操作要求进行详细分析,形成需求分析说明书。最重要的是调查、收集信息、分析购票人信息和飞机预定流程。处理要求、数据的安全性与完整性要求。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。2.2 需求分析的过程航空公司为方便旅客,需开发一个机票预定系统。为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客安排航班,印出取票通知。旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。如果某方面出现问题,旅客可以持有效证件去飞机场退票。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。2.3数据字典与流程图1业务流程分析经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出旅客信息、订票信息和取票通知的具体需求。图2.1 旅客购票流程图 调查用户需求 机场办公需求l 功能:旅客持个人证件去机场购买机票。希望能通过旅客姓名查到该旅客的飞机编号并记录旅客基本信息。l 统计功能:u 按机票统计买票人数u 按姓名统计机票数旅客购票需求l 交费功能:u 交费u 退费 取票需求l 通知功能:u 通知旅客取票l 统计功能:u 统计通过验证的人数u 统计可以取票的人u 统计未通过验证的人数l 查询功能:u 购票旅客查询 购票旅客姓名 购票旅客身份证号 购票旅客订单号 航班信息需求l 查询功能:u 航班号u 起飞地u 目的地u 起飞时间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 数据结构定义数据结构名含义说明组成退票信息定义了退票旅客的有关信息旅客姓名,身份证号,订单号,电话号旅客定义了旅客有关信息旅客姓名,身份证号,性别,工作单位,电话号航班信息表定义了航班的有关信息航班号,起飞地,目的地,起飞时间取票通知单定义了取票通知相关有关信息旅客姓名,取票时间,航班号,座位号,机票类型航班座位息表定义了航班座位有关信息航班号,座位号,座位信息,机票类型q第三章 概念结构设计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.1 E-R图向关系模型的转换将图3.4总体概念结构E-R图转化成关系模型。 退票信息(订单号,旅客姓名,电话号,身份证号)旅客(旅客姓名,身份证号,电话号,性别,工作单位) 航班信息表(航班号,起飞地,目的地,起飞时间) 取票通知单(旅客姓名,取票时间,航班号,座位号,机票类型) 航班座位信息表(座位号,航班号,座位信息,机票类型)4.2 数据模型的优化将转化的关系模式进行优化,最终达到第三范式。1、确定数据依赖退票信息(订单号,旅客姓名,电话号,身份证号)根据这个关系写出数据依赖订单号旅客姓名,订单号电话号,订单号身份证号旅客(旅客姓名,身份证号,电话号,性别,工作单位)旅客姓名身份证号,旅客姓名电话号,旅客姓名性别,旅客姓名工作单位 航班信息表(航班号,起飞地,目的地,起飞时间)航班号起飞地,航班号目的地,航班号起飞时间取票通知单(旅客姓名,取票时间,航班号,座位号,机票类型)旅客姓名取票时间,旅客姓名航班号,旅客姓名座位号,旅客姓名机票类型航班座位信息表(座位号,航班号,座位信息,机票类型)(座位号,航班号)座位信息,(座位号,航班号,座位信息)机票类型2、 对各关系模式间数据依赖进行极小化处理,消除冗余 订单号旅客姓名,订单号电话号,订单号身份证号,旅客姓名性别旅客姓名工作单位,旅客姓名取票时间,旅客姓名航班号旅客姓名座位号,旅客姓名机票类型,航班号起飞地,航班号目的地航班号起飞时间,(座位号,航班号)座位信息3、 看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解 最终分解成第三范式: (订单号,电话号,身份证号)(订单号,旅客姓名)(旅客姓名,取票时间,性别,工作单位,机票类型)(旅客姓名,航班号)(旅客姓名,座位号)(航班号,座位号,机票类型)(航班号,起飞地,目的地,起飞时间)4.3 数据库的结构 给出机票预定系统基本表结构图。图4.1各表的结构根据总体结构图设计各表的结构,其相应标的定义如下:表4-1旅客信息系统的结构字段名数据类型长度约束描述passager namevarchar50主键旅客姓名iddecimal不为空身份证号telephone numberdecimal不为空电话号sexvarchar50不为空性别work departmentVarchar50不为空工作单位表4-2 退票信息系统的结构字段名数据类型长度约束描述order form decimal主键订单号passager namevarchar50不为空旅客姓名telephone numberdecimal不为空电话号idvarchar50不为空身份证号表4-3 航班信息表系统的结构字段名数据类型长度约束描述Flight numberdecimal主键航班号Take off placevarchar50不为空起飞地destinationvarchar50不为空目的地Flight timetime不为空起飞时间表4.4取票通知单系统的结构字段名数据类型长度约束描述passager name varchar50主键旅客姓名Get ticket timetime不为空取票时间flight numberdecimal不为空航班号Seat numberdecimal不为空座位号Flight ticket typeVarchar50不为空机票类型表4.5 航班座位信息表字段名数据类型长度约束描述Seat numberdecimal主键座位号Flight numberdecimal不为空航班号Seat messagevarchar50不为空座位信息Flight ticket typevarchar50不为空机票类型第五章 数据库物理设计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位旅客的订单号,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论