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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

网上订票管理系统.docx

1、网上订票管理系统网上订票管理系统1问题描述网上订票管理系统是在网络环境下实现飞机的订票业务的管理系统。系统改变了传统 的手工订票、送票、柜台支付方式,具有广泛的实用性。网上订票系统的总目标是:在计 算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具 有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的网上订票系统。该系统是为机场、航空公司和客户提供订票退票等与机票相关内容的管理系统,方便 机场工作人员对机票的管理,以提高机场工作人员对机票管理工作的效率。当前飞机订票 问题:手工订票所产生的客座率低。而我们的目标是:建立一个网上飞机订票系统数据库航空公司提供航

2、线和飞机的资料,机场则对在本机场起飞和降落的航班和机票进行管 理,而客户能得到的服务应该有查询航班航线、 班次、票价和剩余票数以及网上订票功能2需求分析功能性需求用户类功能性需求航空公司1) 增加航线2) 修改航线3) 删除航线4) 修改公司信息机场1) 根据航空公司提供的航线,安排航班以及航班的机票2) 如果出现晚点等情况,要记录并发送信息3) 管理航空公司提供的航线和飞机(座位数)资料中所提供的相 关数据4) 管理航班机票5) 管理客户资料客户1) 注册2) 查询航班3) 查询余票和票价4) 预定机票5) 修改个人信息6) 退票7) 注销非功能性需求为了保证系统能够长期、安全、稳定、可靠、

3、高效的运行,网上订票系统应该满足 以下的性能需求:系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分 考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足企业对 信息处理的需求。由于网上订票管理系统的查询功能对于整个系统的功能和性能完成举足轻重。作为 系统的很多数据来源,而机票数量和时间又影响企业的决策活动,其准确性很大程度 上决定了网上订票管理系统的成败。在系统开发过程中,必须采用一定的方法保证系 统的准确性。系统的开放性和系统的可扩充性网上订票管理系统在开发过程中,应该充分考虑以后的可扩充性。例如用户查询的 需求会不断的更新和

4、完善。这些都要求系统提供足够的手段进行功能的调整和扩充。而 要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定 的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换 完成系统的升级和更新换代。系统的易用性和易维护性网上订票管理系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟 悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就 要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问 题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。网上订票管理系统中涉及到的数据是航空公司和机场的相当重

5、要的信息,系统要提 供方便的手段供系统维护人员进行数据的备份,日常的安全管理,系统意外崩溃时数据 的恢复等工作。系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合 主流国际、国家和行业标准。同时,在自主开发本系统时,要进行良好的设计工作,制 订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。系统的先进性目前计算系统的技术发展相当快,作为网上订票管理系统工程,应该保证系统在相 当长的时间内仍旧是先进的,在系统的生命周期尽量做到系统的先进,充分完成企业信 息处理的要求而不至于落后。这一方面通过系统的开放性和可扩充性,不断改善系统的 功能完成。另一方面

6、,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当 前主流并先进且有良好发展前途的产品。系统的响应速度网上订票管理系统在日常处理中的响应速度为秒级以及时反馈信息。根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效率数据需求顶层数据流图0层数据流图3概念设计局部视图设计概念结构设计的第一步就是对需求分析阶段收集到的数据按照 E-R模型的要求进行分 类、组织,形成实体、实体的属性,标识试题的码,确定实体之间的联系类型( 1:11:nm n),设计分E-R图。将航空公司提供资料部分提取出来,如下图所示:航线信息经分析之后得到的分E-R图如下所示:对每个实体的

7、属性定义如下:航空公司编号,名称,地址,联系方式飞机编号,型号,座位数航线起点,终点,编号将机场安排航班部分提取出来,如下图所示:经分析之后得到的分E-R图如下所示:对每个实体的属性定义如下: 飞机编号,型号,座位数 航线起点,终点,编号将客户的查询部分提取出来,如下图所示:经分析之后得到的分E-R图如下所示:在数据流图中的“客户信息”都可以作为属性来对待。 对每个实体和联系的属性定义如下:航班安排编号,时间,票价客户编号,姓名,性别,年龄,联系方式将客户的订票、退票部分提取出来,如下图经分析之后得到的分E-R图如下所示:对每个实体和联系的属性定义如下:订票信息编号,票价客户编号,姓名,性别,

8、年龄,联系方式视图集成各子系统的分E-R图设计好后,下一步就是将所有的分E-R图综合成一个系统的总E-R 图。则集成后的总E-R图如下所示:其中对每个实体和联系的属性定义如下:航班安排编号,时间,票价航空公司编号,名称,地址,联系方式 客户编号,姓名,性别,年龄,联系方式 飞机编号,型号,座位数航线起点,终点,编号订票信息编号,票价再将属性加到上页所示的E-R图上,最后得到的E-R图如下所示:地址联系方式1座位数提供型号mn机场飞机航线起点终占二八、m时间票价m1订票1年龄客户订票信息1姓名退票联系方式性别口航班安 排编号编号、/航空公司名称4逻辑设计概念结构独立于任何DBM数据模型的信息结构

9、。逻辑结构设计的任务就是把概念结构 设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑 结构。E-R图向关系模型的转换E-R图向关系模型的转换要解决的问题是如何将实体和实体型间的联系转换成为关系 模式,如何确定这些关系模式的属性和码。关系模型的逻辑结构是一组关系模式的集合。E-R图则是由实体型、实体型的属性和实 体之间的联系3个要素组成的。所以将E-R图转换成关系模型实际上就是要将实体型、实 体型的属性和实体之间的联系转换成一组关系模式。这种转换一般遵循如下原则:(1) 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系 模式合并。如果转换为

10、一个独立的关系模式,则与该联系相连的各实体的码以及联系本身 的属性均转换为该关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对 应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的 属性。(2) 个1: n联系可以转换为一个独立的关系模式,也可以与 n端对应的关系模式 合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属 性均转换为关系的属性,而关系的码为 n端实体的码。(3) 个m n联系转换为一个关系模式。与该联系相连的各实体的码以及联系 本身的属性均转换为关系的属性,而关系的码为各实体码的组合。(4)3个或3个以上实体间的一

11、个多元联系可以转换为一个关系模式。与该多元联系 相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组 合(5)具有相同码的关系模式可合并。根据以上的原则,通过E/R模型到关系模型的转化,可以得到如下关系模式:(1) “航空公司”实体型所对应的关系模式:Airli ne( AID, Name, Addr, Cont)(2)“客户”实体型所对应的关系模式:Customer(CID, Name, Sex, Age, Cont)(3)“飞机”实体型所对应的关系模式:Plane( PID, Type, SeatsNum, AID)此关系模式已包含了联系“提供”(4)“航线”实体

12、型所对应的关系模式:Line( LID, SPosition, EPosition, AID)此关系模式已包含了联系“提供”(5)“航班安排”联系所对应的关系模式:Flight( FID, PID, LID, Ftime, Price)(6)“订票信息”实体型所对应的关系模式:BookTicket( BID, FID, CID, Price)此关系模式已包含了联系“订票”和“退票”其中,以上的每个关系模式的键码都用下划线标出,外键码用斜体标出。数据模型的优化数据库逻辑设计的结果不是唯一的。为了提高数据库应用系统的性能,还应该根据 应用需要适当的修改、调整关系模式,这就是个数据模型的优化。确定数

13、据依赖:(1) 关系模式 Airli ne( AID, Name, Addr, Co nt) 中的数据依赖AID-Name, AID-Name, AID-Addr, AID-C ont(2) 关系模式 Customer(CID, Name, Sex, Age, Co nt) 中的数据依赖CID-Name, CID-Sex, CID-Age, CID-Co nt(3) 关系模式 Plane( PID, Type, SeatsNum, AID)中的数据依赖PID-Type, PID-SeatsNum,PID-AID(4) 关系模式 Line( LID, SPosition, EPosition,

14、AID)中的数据依赖 LID-SPositio n,L ID-EPositio n, LID-AID(5) 关系模式 Flight( FD, PID, LID, Ftime, Price) 中的数据依赖FID-PID, FID-LID, FID-Ftime, FID-Price(6) 关系模式 BookTicket( BID, FID, CID, Price) 中的数据依赖BID-FID, BID-CID, BID-Pay对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。分析后可知,关系模式BookTicket( BID, FID, CID, Price)和关系模式Flight(

15、FID, PID, LID, Ftime, Price) 有Price 的数据冗余,于是将关系模式 BookTicket改成BookTicket( BJD, FID, CID)。修改后的各个关系模式均没有冗余的联系。按照规范化理论对关系模式逐一进行分析,考查是否存在部分函数依赖、传递函数依 赖、多值依赖等,确定各关系模式分别属于第几范式。由于以上的关系模式的主码只有一个,所以不会存在部分函数依赖。分析后可知也 不存在传递依赖和多值依赖,以上的各关系模式都是 3NF按照需求分析阶段得到的信息要求和处理要求, 分析这些模式是否满足这些要求,确定是否要对某些模式进行合并或分解。(1) 关系模式Air

16、line( AID, Name,Addr, Cont)能满足“修改公司信息” “增加航线” “修改航线” “删除航线”功能。(2) 关系模式Customer(CID, Name, Sex, Age, Co nt) 能满足“管理客户资料” “修 改个人信息”功能。(3) 关系模式Plane(PJD, Type, SeatsNum, AID)能满足“管理飞机(座位数)资 料中所提供的相关数据”功能。(4) 关系模式Line( LID, SPosition, EPosition, AID)能满足“管理航空公司提供 的航线”功能。(5)关系模式Flight( FD, PID, LID, Ftime,

17、Price) 能满足“根据航空公司提供 的航线,安排航班以及航班的机票” “如果出现晚点等情况,要记录并发送信息” “管理航 班机票”功能。(6) 关系模式BookTicket( BJD, FID, CID)能满足“注册” “登录” “查询航班” “查 询余票和票价” “预定机票” “退票”“注销”数据库的模式定义数据库需要表述的信息有以下几种:航空公司信息客户信息飞机信息航线信息航班信息订票信息根据以上的关系模式可以建立如下的表:航空公司信息表列名数据类型可否空说明AIDVarcharNot null航空公司编号NameVarcharNot null航空公司名称AddrVarchar航空公司

18、地址Co ntVarchar航空公司联系方式客户信息表列名数据类型可否空说明CIDVarcharNot null客户编号NameVarcharNot null客户姓名SexVarchar客户性别AgeInt客户年龄Co ntVarchar客户联系方式飞机信息表列名数据类型可否空说明PIDVarcharNot null飞机编号TypeVarcharNot null飞机型号SeatsNumVarcharNot null飞机座位数AIDvarchar航空公司编号航线信息表列名数据类型可否空说明LIDVarcharNot null航线编号SPositionVarcharNot null航线起点EPos

19、iti onVarcharNot null航线终点AIDvarchar航空公司编号航班安排信息表列名数据类型可否空说明FIDVarcharNot null航班编号PIDVarchar飞机编号LIDVarchar航线编号FtimeDatetimeNot null航班时间PriceRealNot null票价订票信息表列名数据类型可否空说明BIDVarcharNot null机票编号FIDVarchar航班编号CIDVarchar客户编号5物理设计数据库在实际物理设备上的存储结构和存取方法成为数据库的物理结构。对于设计好 的逻辑数据模型选择一个符合应用要求的物理结构就是数据库的物理设计。为了提高在

20、表中搜索元组的速度,在实际实现的时候应该基于键码建立索引。下面各 表中建立索引的表项。(1)Airline(AID)(2)Customer(CID)(3)Plane(PID)(4)Line(LID)(5)Flight(FID)(6)BookTicket(BID)6数据库实现用SQL实现建表建立航空公司表CREATE TABLE Airli ne(AID varchar(20) PRIMARY KEY,Name varchar(100) NOT NULL,Addr varchar(100),Cont varchar(200);建立客户表CREATE TABLE Customer(CID varc

21、har(20) PRIMARY KEY,Name varchar(50) NOT NULL,Sex varchar(2),Age int ,Cont varchar(200); 建立飞机信息表 CREATE TABLE Plane(PID varchar(20) PRIMARY KEY,Type varchar(50) NOT NULL, SeatsNum int NOT NULL,AID varchar(20), CONSTRAINT FK_PLANE_AID FOREIGN KEY(AID) REFERENCES Airline(AID) );建立航线表CREATE TABLE Line

22、(LID varchar(20) PRIMARY KEY,SPosition varchar(100) NOT NULL,EPosition varchar(100) NOT NULL,AID varchar(20), CONSTRAINT FK_LINE_AID FOREIGN KEY(AID) REFERENCES Airline(AID) );建立航班安排表CREATE TABLE Flight(FID varchar(20) PRIMARY KEY,PID varchar(20), CONSTRAINT FK_FLIGHT_PID FOREIGN KEY(PID) REFERENCES

23、 Plane(PID),LID varchar(20), CONSTRAINT FK_FLIGHT_LID FOREIGN KEY(LID) REFERENCES Line(LID),Ftime datetime NOT NULL, Price real NOT NULL);建立订票信息表CREATE TABLE BookTicket (BID int PRIMARY KEY AUTO_INCREMENT,FID varchar(20), CONSTRAINT FK_BOOKTICKET_FID FOREIGN KEY(FID) REFERENCES Flight(FID),CID varch

24、ar(20), CONSTRAINT FK_BOOKTICKET_CID FOREIGN KEY(CID) REFERENCES Customer(CID) );用SQL实现操作 航空公司操作注册公司INSERT INTO Airline(AID, Name, Addr, Cont) VALUES(#AID, #Name, #Addr, #Cont);这里的#AID必须是惟一的,否则不可以插入到数据库中. 使用下列语句建表insert into Airline(AID,Name,Addr,Cont) values(CA, 中国国际航空股份有限公司 , 北京,0);insert into Air

25、line(AID,Name,Addr,Cont) values(CZ, 中国南方航空股份有限公司 , 广州,950333);insert into Airline(AID,Name,Addr,Cont) values(MU, 中国东方航空公司 , 上海,86-21-95108);insert into Airline(AID,Name,Addr,Cont) values(HU, 中国海南航空股份有限公司 , 海南,950718);再用 select * from Airline; 语句查看:删除公司DELETE FROM Airline WHERE(AID = #AID); 即使用下列语句操作

26、:delete from Airline where(AID=HU); 再用 select * from Airline; 语句查看:修改公司信息UPDATE AirlineSET Name=#Name, Addr= #Addr, Cont= #Cont WHERE(AID = #AID); 即使用下列语句操作:update Airlineset Cont=955333 where(AID=CZ);再用 select * from Airline; 语句查看:增加飞机INSERT INTO Plane(PID, Type, SeatsNum, AID)VALUES(#PID, #Type, #

27、SeatsNum, #AID); 即使用下列语句操作:INSERT INTO Plane(PID, Type, SeatsNum, AID) VALUES(1001, 波音 737 , 148, CA);INSERT INTO Plane(PID, Type, SeatsNum, AID) VALUES(2001, 波音 747 , 360, MU);INSERT INTO Plane(PID, Type, SeatsNum, AID) VALUES(1002, 波音 777 , 350, CA);INSERT INTO Plane(PID, Type, SeatsNum, AID) VALU

28、ES(3001,MD-82 , 145, CZ);INSERT INTO Plane(PID, Type, SeatsNum, AID) VALUES(2002,M11 , 340, MU);INSERT INTO Plane(PID, Type, SeatsNum, AID) VALUES(3002,A300 , 148, CZ);INSERT INTO Plane(PID, Type, SeatsNum, AID) VALUES(1003,A300 , 148, CA) ;再用 select * from Plane; 语句查看:删除飞机DELETE FROM Plane WHERE(PI

29、D = #PID); 即使用下列语句操作:delete from Plane where(PID=1003); 再用 select * from Plane; 语句查看:修改飞机UPDATE PlaneSET Type= #Type, SeatsNum= #SeatsNum WHERE(PID = #PID); 即使用下列语句操作:update Planeset SeatsNum=149 where(PID=1001); 再用 select * from Plane; 语句查看:增加航线INSERT INTO Line(LID, SPosition, EPosition,AID)VALUES(#LID, #SPosition, #EPosition, #AID);即使用下列语句操作:INSERT INTO Line(LID, SPosition, EPosition,AID) VALUES(BS123, 北京, 上海, CA);INSERT INTO Line(LID, SPosition, EPosition,AID) VALUES(BT321, 北京, 天津, CZ);INSERT INTO Line(LID, SPosition, EPosi

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

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