1、旅游管理系统数据库设计旅游管理系统数据库设计1.概述随着生活水平的提高,人们不但要在物质方面提高生活水平,而且在精神方面希望有一个质的飞越。于是,越来越多的人选择在周末或是假期外出,换换环境,享受在另外一种环境下的生活方式,来丰富自己的精神世界,扩展视野。各种各样的旅行社就由此孕育而生,丰富多彩的旅游景点则需要一个合适的旅行代理来规范并提供各种旅行服务,使得各项工作都有条有理地进行,因此进行旅行代理是十分必要的。在计算机飞速发展的今天,将计算机这一信息处理利器应用于旅行大力的日常管理已是势必所然,而且这也将为旅行代理带来前所未有的改变,它能够带来意想不到的效益,同时也会为企业的飞速发展提供无限
2、潜力。采用计算机管理信息系统已成为旅行代理科学化和现代化的重要标志,它给企业管理来了明显的经济效益和社会效益。2.系统目标和建设原则 2.1系统目标旅行代理数据库是为旅行代理服务中各个用户提供数据的记录查询修改备份服务而进行设计的。根据用户的需求实现信息的输入、查询、修改和维护等管理功能。 用户能够经过旅行大力数据库对消费者和旅行代理机构的个项数据进行查询、校正并进行修改。旅行代理数据库还能够对消费者进行合法性认证以接受各项旅行代理提供的各项消费服务。2.2建设原则 本次旅行代理数据库设计主要按照以下几个原则进行:2.2.1 能真实充分地反映旅行代理服务流程。在消费者经过合法性认证后,旅行代理
3、机构向消费者购提供旅行代理服务,安排旅行代理保险服务,航班、提供食宿等功能,旅行代理机构根据消费者的需求进行航班班次、航线和时间及航班座位的查询、安排和调整;并提供相应的食宿安排,如食宿的地点、时间、费用等。在消费者进行登记完成后,旅行代理机构对消费者的登记信息进行数据库化并校对正确后,向消费者发放帐单。消费者和旅行代理机构能够根据已经建立的登记信息数据库对帐单与数据库内容进行查询校对和修改。2.2.2 容易理解,有利于管理人员使用。旅行代理是非广大消费者服务的,消费者要对登记信息进行查询,查询的登记信息要通俗易懂。同时建立的登记数据库信息要方便旅行代理机构对其进行矫正修改和备份。2.2.3
4、易于用关系数据库实现。描述概念模型的有力工具E-R图来对问题进行描述。3.支撑环境规划3.1 网络逻辑结构此次设计的网络逻辑结构采用三层C/S体系结构。它包含了表示层、功能层、数据层。在C/S结构中表示层负责处理拥护的输入和向可户的输入。功能层负责建立数据库的连接,根据用户的请求生成访问数据库的SQL语句,并把结果返回给客户端。数据层负责实际的数据库存储和检索,响应功能层的数据处理请求,并把结果返回给功能层。浏览器/服务器(B/S)风格就是上述三层结构的一种实现方式,其具体结构为:浏览器/WEB服务器/数据库服务器。采用B/S结构的计算机应用系统的基本框架如下图所示:数据库WEB服务器WEB服
5、务器B/S模式结构客户端浏览器客户端浏览器数据库服务器3.2软件支撑环境及开发工具 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。4.系统总体结构4.1 总体DFD消费者先进行登记操作,产生登记信息数据,经过处理记录备份后到达旅行服务机构。旅行代理机构根据登记信息数据,进行联系服务操作。航班服务、食宿管理、保险代理操作产生的服务信息数据经过进一步处理记录备份以便以后的操作使用。4.2 功能结构4.2.1本次旅行代理数据库设计主要完成以下几个功能:4.1.1 旅行代理中各种信息的输入,如消费者登记信息、旅行保险代理、旅行代理机构服务信息、飞机航班信息、消费者预定食宿信息、帐单信息等。
6、4.1.2 旅行代理中各种信息的查询、修改和维护。4.1.3 旅行代理服务报表的生成。4.1.4 在旅行代理中加入合法性认证和旅行代理限度(包括服务团队、航班座位和食宿区等是否饱和,对消费者登记信息中的非法信息实现监控和报警。4.1.5 旅行代理中各部门的资源需求的管理。4.1.6 旅行代理帐单日志的管理。4. 1. 7 旅行代理系统的使用帮助4.2.2功能结构图4.3 数据库结构4.3.1数据字典消费者数据字典: 数据项数据项含义类型长度备注消费者编号CHAR101对1关系代理机构编号CHAR101对1关系姓名消费者姓名CHAR101对1关系性别消费者性别CHAR2国籍消费者国籍CHAR10
7、身份证消费者身份证CHAR101对1关系旅行代理机构数据字典:数据项数据项含义类型长度备注代理机构编号CHAR101对1关系消费者编号CHAR101对1关系联系编号CHAR101对1关系预定编号CHAR101对1关系购买编号CHAR101对1关系服务团队VARCHAR50管理人员VARCHAR50服务信息VARCHAR50航空公司数据字典:数据项数据项含义类型长度备注航空公司编号CHAR101对1关系联系编号CHAR101对1关系时间航班时间DATETIME8格式用“-”地点目的地CHAR10航线CHAR10舱位种类CHAR10共有4种费用INT4酒店数据字典:数据项数据项含义类型长度备注酒店
8、编号CHAR101对1关系预定编号CHAR101对1关系时间酒店服务时间DATETIME8格式用“-”地点酒店位置CHAR10食宿标准CHAR10共有4种费用INT4保险公司数据字典:数据项数据项含义类型长度备注保险公司编号CHAR101对1关系购买编号CHAR101对1关系保险种类VARCHAR10共有4种保险费用INT4保险有效期限DATETIME8格式用“-”4.3.2 E-R图为了把用户的数据要求清楚准确的描述出来,系统分析员一般建立一个概念性的数据模型(也称信息模型)。概念性数据模型是一种画面问题的数据模型,是按照用户的观点对数据建立模型。下面我们经过E-R来进行描述。消费者代理机构
9、编号国籍姓名年龄消费者编号身份证 消费者E-R图上面的E-R图描述了消费者登记信息,包括消费者是姓名、年龄、国籍和旅行信息。这些信息是旅行代理服务数据库的主要内容,经过她能够对消费者旅行需求进行分析以便让旅行代理机构为她们提供满意的代理服务。旅行代理机构E-R图旅行代理机构代理机构编号航班公司编号酒店编号保险公司编号服务团队管理人员服务信息消费者编号 上面的E-R图描述了旅行代理机构的各项信息,这些信息是旅行代理服务中重要的组成部分,同时也是消费者选择旅行服务需求的参考和保障。航空公司时间地点航线舱位种类费用航空公司编号航空公司E-R图联系编号酒店时间地点食宿种类费用酒店编号 酒店E-R图预定
10、编号保险公司保险公司编号保险种类保险费用保险有效期限保险公司E-R图购买编号 以上三个图是对消费者接受消费服务过程登记的信息依据,也是旅行代理机构对消费者登记信息处理的体现。航班服务包括了对航班班次、航线和时间及航班座位的查询、安排和调整;食宿管理安排,包括食宿的地点、时间、费用等;帐单信息包括了食宿信息、消费信息、代理信息、旅行保险和航班信息。这些都是对消费者与旅行代理机构间各项交互的形象描述,是对数据库实例由抽象到具体的分析模型。MMMNNNNM消费者旅行代理机构航空公司保险公司酒店登记登记编号消费金额登记时间联系联系时间联系编号购买预定预定时间预定编号购买编号购买时间 上面的E-R图是对
11、整个旅行代理服务过程中各个实体与实体之间的关系的描述。消费者进行认证登记后产生了详细的消费者信息,经过处理记录到旅行代理数据库。消费者查询旅行代理机构的信息数据,确定了接受旅行代理服务。然后产生各项必须的消费数据,如航班服务数据和食宿数据,最后产生帐单,经代理机构交到消费者手里。4.3.3关系数据库模式 消费者(消费者编号、代理机构编号、年龄、性别、国籍、身份证) 旅行代理机构(代理机构编号、消费者编号、联系编号、预定编号、购买编号、服务团队、管理人员、服务信息) 航空公司(航空公司编号、联系编号、时间、班次、航线、舱位种类、费用) 酒店(酒店编号、预定编号、时间、地点、食宿标准、费用) 保险
12、公司(保险公司编号、购买编号、保险种类、保险费用、保险有效期限) 联系(联系编号、代理机构编号、航空公司编号、联系时间) 预定(预定编号、代理机构编号、酒店编号、预定时间) 购买(购买编号、代理机构编号、保险公司编号、购买时间) 旅行代理登记服务表的关系图: 本次设计我对表 消费者的性别、航空公司的舱位种类、酒店的食宿标准、保险公司的保险种类都进行了约束,下面就是其中两个约束图例:本次设计我设计了5个角色:超级管理员、顾客、航空公司管理员、酒店管理员、保险公司管理员。她们都有各自的权限,下面就是其中两个权限图例:5总体实施计划 5.1 数据库的实施数据库的实施主要是根据逻辑结构设计和物理结构设
13、计的结果,在计算机系统上建立实际的数据库结构、导入数据并进行程序的调试。它相当于软件工程中的代码编写和程序调试的阶段。用具体的DBMS提供的数据定义语言(DDL),把数据库的逻辑结构设计和物理结构设计的结果转化为程序语句,然后经DBMS编译处理和运行后,实际的数据库便建立起来了。当前的很多DBMS系统除了提供传统的命令行方式外,还提供了数据库结构的图形化定义方式,极大地提高了工作的效率。具体地说,建立数据库结构应包括以下几个方面: 数据库模式与子模式,以及数据库空间的描述。 数据完整性的描述。 数据安全性描述。 数据库物理存储参数的描述。此时的数据库系统就如同刚竣工的大楼,内部空空如也。要真正
14、发挥它的作用,还有必须装入各种实际的数据。5.2 数据库的试运行当有部分数据装入数据库以后,就能够进入数据库的试运行阶段,数据库的试运行也称为联合调试。数据库的试运行对于系统设计的性能检测和评价是十分重要的,因为某些DBMS参数的最佳值只有在试运行中才能确定。由于在数据库设计阶段,设计者对数据库的评价多是在简化了的环境条件下进行的,因此设计结果未必是最佳的。在试运行阶段,除了对应用程序做进一步的测试之外,重点执行对数据库的各种操作,实际测量系统的各种性能,检测是否达到设计要求。如果在数据库试运行时,所产生的实际结果不理想,则应回过头来修改物理结构,甚至修改逻辑结构。5.3数据库的运行和维护数据
15、库系统投入正式运行,意味着数据库的设计与开发阶段的基本结束,运行与维护阶段的开始。数据库的运行和维护是个长期的工作,是数据库设计工作的延续和提高。在数据库运行阶段,完成对数据库的日常维护,工作人员需要掌握DBMS的存储、控制和数据恢复等基本操作,而且要经常性地涉及物理数据库、甚至逻辑数据库的再设计,因此数据库的维护工作依然需要具有丰富经验的专业技术人员(主要是数据库管理员)来完成。数据库的运行和维护阶段的主要工作有:对数据库性能的监测、分析和改进。数据库的转储和恢复。维持数据库的安全性和完整性。数据库的重组和重构。6.研制报告 本次课程设计我学会了怎么将实际生活中的问题运用自己所学的知识来把它
16、实现。虽然过程不是很复杂,但其中对于我的重要性和意义是很大的。这次实验使我懂得了如何进行数据库操作,使我较全面地理解、掌握和综合运用所学的知识,同时培养我分析问题和解决问题的能力,以及软件文档的制作能力。当然在课程设计的时候也遇到了不少问题。我错误的把实体的功能当成试题进行E-R构造,还有就是缺少对系统完整性的分析以及对表内各项约束条件的考虑。最后就是对系统的角色及其权限考虑的不够清楚完善。总之,这次课程设计使我明白,学习和做事都要认真分析,考虑问题要全面周到,这样才能够事半功倍。7.参考文献王珊 编著 数据库系统简明教程 ,高等教育出版社李霞 沈精虎 编著Visual Basic数据库应用程序开发指南,人民邮电出版社张有生 等 编著 软件体系结构 ,清华大学出版社