资源描述
机票预订管理系统
19
2020年4月19日
文档仅供参考
摘 要
当人们收集了大量的数据后,应该把它们保存起来做进一步的处理和信息的抽取。当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术来科学地保存大量的数据,以便能更好的利用这些数据资源。
机票预订系统是为机场工作人员和客户提供的与订票退票有关的管理系统,以实现航空管理的自动化,本课题的目的是为了巩固《数据库原理与应用》课程中所学的知识,体现理论指导实践的原则,为机票预订系统设计后台数据库,经过需求分析,概念设计,逻辑设计,物理设计及数据库的实施和运行等阶段,体现数据库设计的全过程。
关键词:SQL SERVER;数据库设计;机票预定系统
目录
第一章 绪论 1
1.1课题简介 1
1.2设计目的 1
1.3设计内容 1
第二章 需求分析 2
2.1 需求分析的任务 2
2.2 需求分析的过程 2
2.3数据字典与流程图 2
第三章 概念结构设计 5
3.1 概念结构设计的方法与步骤 5
3.2 数据抽象与局部视图设计 5
3.3视图的集成 6
第四章 逻辑结构设计 7
4.1 E-R图向关系模型的转换 7
4.2 数据库关系图 7
第五章 数据库的实现 10
5.1数据库的建立 10
5.2 数据库基本结构的建立 10
5.3安全性的实现 10
5.4完整性的实现 10
5.5恢复技术的实现 11
第六章 运行与结果 12
6.1简单查询和连接查询 12
6.2嵌套查询 12
6.3组合查询和统计查询 12
第一章 绪论
1.1课题简介
经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系实际的宗旨,经过学校提供的这次课程设计实践的机会,在指导教师的帮助下,历经两周时间,我自行设计一套机票预定管理系统,在下面的各章中,我将以这套机票预定系统为例,谈谈其开发过程和所涉及到的问题。
1.2设计目的
实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识、SQL SERVER的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
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机票预定系统总框架图
3.数据字典
将所有子系统全部细化。将所有用户需求分析完毕之后,就要开始构造数据字典了。经分析之后,本系统要用到五个基本表:退票信息表,旅客信息表,航班信息表,取票通知单,航班座位信息表。数据结构定义如表2.1所示。
表2.1 数据结构定义
数据结构名
含义说明
组成
退票信息
定义了退票旅客的有关信息
旅客姓名,身份证号,订单号,电话号
旅客
定义了旅客有关信息
旅客姓名,身份证号,性别,
工作单位,电话号
航班信息表
定义了航班
的有关信息
航班号,起飞地,目的地,起飞时间
取票通知单
定义了取票通知相关有关信息
旅客姓名,取票时间,航班号,座位号,机票类型
航班座位息表
定义了航班座位有关信息
航班号,座位号,座位信息,机票类型
第三章 概念结构设计
3.1 概念结构设计的方法与步骤
概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。
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张表,每个表都有主键,设必要的外键。)
退票信息表(订单号,旅客姓名,电话号,身份证号)
旅客信息表(身份证号,旅客姓名,电话号,性别,工作单位)
航班信息表(航班号,起飞地,目的地,起飞时间)
取票通知单(订单号,取票时间,航班号,座位号,机票类型,身份证号)
航班座位信息表(座位号,航班号,座位信息,机票类型)
购买(身份证号,航班号)
4.2 基本表结构
根据总体结构图设计各表的结构,其相应表的定义如下:
表4-1旅客信息表的结构
字段名
数据类型
长度
是否为空
主/外键
描述
passager name
varchar
50
否
主键
旅客姓名
id
decimal
否
身份证号
telephone number
decimal
否
电话号
sex
varchar
50
否
性别
work department
Varchar
50
否
工作单位
表4-2 退票信息表的结构
字段名
数据类型
长度
是否为空
主/外键
描述
表4-3 航班信息表的结构
字段名
数据类型
长度
是否为空
主/外键
描述
表4.4取票通知单表的结构
字段名
数据类型
长度
是否为空
主/外键
描述
表4.5 航班座位信息表的结构
字段名
数据类型
长度
是否为空
主/外键
描述
Seat number
decimal
否
主
键
外键
座位号
Flight number
decimal
否
外键
航班号
Seat message
varchar
50
否
不为空
座位信息
Flight ticket type
varchar
50
否
不为空
机票类型
。
第五章 数据库的实现
5.1数据库的建立
写出相关的SQL语句。
5.2 数据库基本结构的建立
1、基本表的建立
写出相关的SQL语句。
2、添加数据
每个基本表至少添加10条数据,写出相关的SQL语句(写出其中一个SQL语句即可)。
3、视图的建立
至少设计一个视图,写出相关的SQL语句。
4、 索引的建立
为每张基本表设计一个聚簇索引,并至少为其中一张表设计一个唯一索引。写出相关的SQL语句(聚簇,唯一各写一个即可)。
5、游标的建立
根据应用要求,为其中一个基本表设计游标,并利用该游标修改数据,写出SQL语句。
6、存储过程的建立
根据应用要求,至少设计一个存储过程,写出SQL语句。
5.3安全性的实现
1、利用图形化工具
为了提高安全性,建立系统用户,SQL SERVER用户,数据库用户,写出你所建立的三个用户名。
为SQL SERVER用户,数据库用户分配角色,写出分配的角色名。
2、利用Transact-SQL
设计一个SQL server登录账户,并设置密码,写出相应的SQL语句。
为登录帐户,设计创立一个数据库用户,写出相应的SQL语句。
为数据库用户创立数据库角色,写出相应的SQL语句。
5.4完整性的实现
1、UNIQUE约束
2、CHECK约束
3、DEFAULT约束
4、NOT NULL约束
5、规则
设计以上五项,写出相应的SQL语句。
5.5恢复技术的实现
完成所有数据的设计工作后,备份数据库,写出备份文件存放位置和文件名。
如:C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\订票.bak
第六章 运行与结果
6.1简单查询和连接查询
1、简单查询
设计两个简单查询,写出相应的SQL语句,并对查询结果截图。
如:select* from 航班信息表
2、连接查询
设计两个连接查询,写出相应的SQL语句,并对查询结果截图。
6.2嵌套查询
设计两个连接查询,写出相应的SQL语句,并对查询结果截图。
6.3组合查询和统计查询
1、组合查询
设计两个组合查询语句,写出相应的SQL语句,并对查询结果截图。
2、统计查询
设计两个统计查询语句,写出相应的SQL语句,并对查询结果截图。
展开阅读全文