如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
数据库课程设计学院计算机专业计算机科学与技术班级学号姓名指导教师左亚饶(2013年1月)目录TOC\o"1-3"\h\z\uHYPERLINK\l"_Toc346118673"一、需求分析PAGEREF_Toc346118673\h3HYPERLINK\l"_Toc346118674"二、概念结构设计PAGEREF_Toc346118674\h4HYPERLINK\l"_Toc346118675"三、逻辑结构设计PAGEREF_Toc346118675\h4HYPERLINK\l"_Toc346118676"四、数据库设计实现及运行PAGEREF_Toc346118676\h5HYPERLINK\l"_Toc346118677"五、系统实现主要模块描述以及关键代码PAGEREF_Toc346118677\h18HYPERLINK\l"_Toc346118678"七、心得与体会PAGEREF_Toc346118678\h23一、需求分析1)、问题描述:航空订票管理系统主要是为机场、航空公司和客户三方服务。航空公司提供航线和飞机的资料,机场则对在本机场起飞和降落的航班和机票进行管理,而客户能得到的服务应该有查询航班路线和剩余票数,以及网上订票等功能。客户可以分为两类:一类是普通客户,对于普通客户只有普通的查询功能和订票功能没有相应的票价优惠;另一类是经常旅客,需要办理注册手续,但增加了里程积分功能和积分优惠政策。机场还要有紧急应对措施,在航班出现延误时,要发送相应的信息。2)、系统功能描述:航班查询:根据用户输入的“起飞机场”和“降落机场”信息找到符合要求的航班号,并显示相应的起飞时间、飞行里程、各舱等的余票情况、各舱等的票价情况。供用户进行选择。订票:根据用户输入的“所订航班号”和“订票乘客信息”,为用户查看该航班是否有余票:有则生成一条新的票务信息,根据该用户的积分情况制定票价,修改其积分里程;若已无余票,则将该乘客登机在侯票名单之中。退票:根据用户输入的“所退票流水号”信息,修改订票乘客的积分信息,将相关的票务记录删除;并在侯票记录中找到符合航班要求的第一名乘客,为其办理订票服务,相关的修改其积分。售票情况统计:统计每个航班的各个舱位等级的已售票数目,侯票数目。积分功能:为每一个已订购的乘客记录其飞行里程积分,当积分达到一定程度后,为其提供打折的票价。航班延误:当要延误一个航班时,找到已订购该航班的乘客,发送提示信息。3)、有何安全性与完整性方面的要求:订票事务的原子性:每个乘客的订票过程是互斥执行的,防止有一张票卖给两个人的情况发生。通过订票存储过程实现。飞机、航班、票务的级联:当删除一个飞机,级联的删除该飞机所飞行的航班,以及订购了该航班的乘客订票。通过触发器实现。二、概念结构设计画出系统整体的E-R模型;并对模型中所出现的实体及属性等信息加以说明。三、逻辑结构设计1)、模式设计:按系统整体E-R模型,写出关系模式;并利用数据字典加以描述。航空公司表:(公司名称,公司网址);飞机表:(飞机号,机型,头等舱定额数,普通舱定额数,所属航空公司);航线表:(航线号,起飞机场,降落机场,飞行里程,所属航空公司);航班表:(航班号,执行飞机号,所飞航线号,头等舱票价,普通舱票价,起飞时间);乘客表:(乘客姓名,里程积分,E_mail);机票表:(机票流水号,所乘航班号,订票乘客姓名,所乘舱位等级,票价);侯票表:(所侯航班,侯票乘客姓名,所需舱位等级,乘客E_mail);除各主键外,其余各非主属性也为非空。“头等舱定额数,普通舱定额数,飞行里程,机票流水号,票价,里程积分”为数值型,约束不能小于0,其余为字符型,舱位等级只能选“头等舱或普通舱”。2)、子模式设计:即针对自己的设计模块的应用需定义什么样的视图表结构;并利用数据字典加以描述。售票情况视图:(航班号,头等舱数目,头等舱已售出数目,头等舱侯票数目,普通舱数目,普通舱已售出数目,普通舱侯票数目)用于方便机场管理票务,统计各舱等的售票、须票情况。航班选择视图:(航班号,起飞机场,降落机场,飞行里程,头等舱票价,头等舱是否有票,普通舱票价,普通舱是否有票)提供航班飞行的基本情况,包括判断是否有票,以便选择订票。票务信息视图:(机票流水号,订票乘客姓名,所订航班,所订舱等,票价,飞行里程)提供机票的相关信息,以便退票时事物处理。四、数据库设计实现及运行1)、数据库的创建T-SQL语句:createdatabaseBookTicket_6222