机票预订系统课程设计报告书.docx
《机票预订系统课程设计报告书.docx》由会员分享,可在线阅读,更多相关《机票预订系统课程设计报告书.docx(31页珍藏版)》请在冰豆网上搜索。
机票预订系统课程设计报告书
科技大学
《数据库原理及应用》课程设计说明书
题目:
机票预订系统
学生
学号:
专业:
计算机科学与技术
班级:
4班
指导教师:
余金林
科技大学课程设计任务书
课程名称
数据库课程设计
设计题目
机票预订系统(题目等级60)
指导教师
余金林
时间
15周-16周
一、教学要求
1.从附录一中选择一个题目进行数据库应用系统设计。
2.功能设计:
用VisualFoxPro,VisualBasic、PB等开发工具与数据库管理系统SQL-SEVER或Access制作一个小型管理系统。
所设计的小型管理系统应包含输入输出、查询、插入、删除等基本功能。
设计课题可以从候选的项目中选出,根据题目的基本需求,画出流程图,编写程序,并写出详细的设计说明书。
(本项实际系统设计与实现可选,但必须有功能设计过程)
3.数据库的设计:
根据数据库应用系统设计过程,通过需求分析和系统分析,进行数据库的概念结构设计、逻辑结构设计等工作:
●概念结构设计的E-R图
●数据库逻辑结构设计是以表格的形式说明数据库中有几个表,每个表的表名以及每个表的各字段名,类型和约束(主、外码);
●确定表之间的关联(一对一、一对多、多对多)
●运用数据库理论确定每个表至少属于3NF。
二、设计资料及参数
1、订单编号
2、航班编号、出发地、目的地、出发时间到达时间
3、机票编号、座位号、机舱等级
4、旅客编号、、性别、号
三、设计要求及成果
1.按照数据库应用系统设计步骤进行数据库结构设计。
2.使用开放工具及数据库管理系统开放应用系统(可选)。
3.书写论文(具体要求见论文模板)。
四、建议参考资料
《数据库系统教程》(第三版)施伯乐等著高等教育
第一章绪论
1.1课题简介
随着时代的发展,计算系软件和系统的成熟,机票如果简单方面预定成为一个影响多数人生活的问题。
而建立机票预定系统是一个很好的解决办法。
经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系实际的宗旨,通过学校提供的这次课程设计实践的机会,在指导教师的帮助下,历经两周时间,我自行设计一套机票预定管理系统,在下面的各章中,我将以这套机票预定系统信息系统为例,谈谈其开发过程和所涉及到的问题。
1.2设计目的
应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。
实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
1.3设计容
选择课题并且对课题的相关信息有一定的了解,对于我选的课题来说,我必须了解机票预定系统的构造以及购票人的信息还有机票的相关信息。
通过这些信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。
需求分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。
概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。
逻辑结构设计阶段要把E-R图转化为关系模式。
最后就是要运行和实施数据库。
第二章需求分析
2.1需求分析的任务
调查机票预定系统应用领域涉及的容,对涉及到领域的各个应用的信息要求和操作要求进行详细分析,形成需求分析说明书。
最重要的是调查、收集信息、分析购票人信息和飞机预定流程。
处理要求、数据的安全性与完整性要求。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。
2.2需求分析的过程
航空公司为方便旅客,需开发一个机票预定系统。
为便于旅客由旅行社代替航空公司负责为旅客定票,旅行社把预定机票的旅客信息,包括、性别、工作单位、、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司的航班数据服务器后,为旅客安排航班,印出取票通知。
旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。
如果某方面出现问题,旅客可以持有效证件去飞机场退票。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。
经过综合分析,确定了机票预订管理系统主要包括以下功能:
(1)订单信息管理功能
主要是实现管理员对订票信息的管理,包括对航班基本信息如航班号、起飞地、目的地、起飞时间等,旅客基本信息如旅客、性别、、号、座位号、订票数量的添加、修改、删除和查询功能。
订单信息管理系统图2-1
(2)旅客信息管理功能
主要是实现管理员对旅客一些基本信息,如旅客、性别、、号的添加、修改、删除和查询功能。
旅客信息管理系统图2-2
(3)航班信息管理功能
主要实现管理员对航班的一些基本信息,航班号、起飞地、目的地、起飞时间的添加、修改、删除查询和功能。
航班信息管理系统图2-3
(4)机票信息管理功能
主要实现管理员对机票的一些基本信息,如航班号、座位号、座位信息、机票类型的添加、修改、删除和查询功能。
机票信息管理系统图2-4
(5)退票信息管理功能
主要是实现管理员对退票信息的管理,包括对订单号、旅客、、号的添加、修改、删除和查询功能。
退票信息管理系统图2-5
2.3数据字典与流程图
2.3.1数据字典
数据字典是用来规描述数据具体容的工具,也是对数据汇总分析的一个总结。
一般来说,可为每个数据建立一二维表。
在本系统中,分别为旅客信息、旅客订票信息、航班机票信息、旅客与机票的联系、退票信息建立了数据字典,具体如表2-1到表2-6所示。
主键:
蓝色
外键:
下划线
表2-1订单信息的数据字典
字段名
描述
数据类型
长度
是否允许为空
Booking_Number
订单的编号
VARCHAR
50
否
Flight_Number
航班编号
VARCHAR
20
否
Seat_Number
座位编号
VARCHAR
50
否
Passenger_Number
旅客编号
VARCHAR
50
否
Ticket_Number
机票的编号
VARCHAR
50
否
Price
金额
VARCHAR
50
否
表2-2航班信息的数据字典
字段名
描述
数据类型
长度
是否允许为空
Flight-Number
航班编号
VARCHAR
50
否
Takeoff_Time
起飞时间
VARCHAR
50
否
Arrtival_Time
到达时间
VARCHAR
50
否
Origin
出发地
VARCHAR
50
否
Destination
目的地
VARCHAR
50
否
Flight_Type
航班型号
VARCHAR
50
否
表2-3机票信息的数据字典
字段名
描述
数据类型
长度
是否允许为空
Ticket_Number
机票编号
VARCHAR)
50
否
Seat_Number
座位号
VARCHAR
50
否
Price
价格
VARCHAR
50
否
Takeoff_Time
出发时间
VARCHAR
50
否
Destination
目的地
VARCHAR
50
否
表2-4旅客信息的数据字典
字段名
描述
数据类型
长度
是否允许为空
Passenger_Number
旅客编号
VARCHAR
50
否
Passenger_Name
旅客
VARCHAR
50
否
ID_Number
号
VARCHAR
50
否
Sex
性别
VARCHAR
50
否
Telephone
VARCHAR
50
否
表2-5旅客与机票信息的联系数据字典
字段名
描述
数据类型
长度
是否允许为空
Number
编号
VARCHAR
50
否
Ticket-Number
机票编号
VARCHAR
50
否
Passenger_Number
旅客编号
VARCHAR
50
否
表2-6退票信息的数据字典
字段名
描述
数据类型
长度
是否允许为空
Order_Number
退票号
VARCHAR
50
否
Takeoff_Time
时间
VARCHAR
50
否
Booking_Number
订单编号
VARCHAR
50
否
2.3.2基本流程图
机票预订系统流程图2-6
第三章ER模型图
3.1实体属性图
订单信息实体属性图3-1
航班信息实体属性图3-2
机票信息实体属性图3-3
客户与机票实体属性图3-4
旅客信息实体属性图3-5
座位信息实体属性图3-6
退票信息实体属性图3-7
3.2总体ER模型图
第四章逻辑结构设计
4.1E-R图向关系模型的转换
订单信息(订单号,航班号,座位号,数量,类型)
退票信息(订单号,旅客编号,时间)
旅客信息(旅客编号,号,,性别,联系)
航班信息表(航班编号,起飞地,目的地,起飞时间)
座位信息表(座位号,机票类型)
4.2数据模型的优化
将转化的关系模式进行优化,最终达到第三式。
1、确定数据依赖
退票信息(订单号,旅客,航班号)根据这个关系写出数据依赖
订单号→旅客,订单号→座位号,订单号→航班号
旅客(旅客,旅客编号,号,性别)
旅客→号,旅客→号,旅客→性别
航班信息表(航班号,起飞地,目的地,起飞时间)
航班号→起飞地,航班号→目的地,航班号→起飞时间
座位信息表(座位号,航班号,座位信息,机票类型)
(座位号,航班号)→座位信息,(座位号,航班号,座位信息)→机票类型
2、对各关系模式间数据依赖进行极小化处理,消除冗余
订单号→旅客编号,订单号→座位号,订单号→机票编号,订单号→机票编号
3、看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解
最终分解成第三式:
(订单号,机票编号,机票类型)(订单号,旅客编号)(旅客编号,旅客,性别)(旅客,座位号)(航班号,座位号,机票类型)(航班号,起飞地,目的地,起飞时间)
第5章功能实现
5.1查询功能的实现
通过查询功能我们可以找到相关的信息。
USEMARKET
SELECT*FROMSeat
查询功能图5-1
5.2多条件查询功能的实现
使用多条件查询功能可以增加查询的限制条件,这样可以使查询的结果更准确。
USEMARKET
SELECT*FROMPassengerWHERESex='女'ANDPassenger_Name='小青'
多条件查询功能图5-2
5.3添加功能的实现
通过添加功能实现对数据的增加,录入需要的信息。
USEMARKET
INSERTINTOPassengerVALUES('00001',