数据库原理与应用课程设计-机票预定系统.doc_第1页
数据库原理与应用课程设计-机票预定系统.doc_第2页
数据库原理与应用课程设计-机票预定系统.doc_第3页
数据库原理与应用课程设计-机票预定系统.doc_第4页
数据库原理与应用课程设计-机票预定系统.doc_第5页
免费预览已结束,剩余8页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

机票预订系统 课 程 设 计 报 告课程设计名称: 数据库原理与应用 系 部: 二 系 学生姓名: 班 级: 09信科2班 学 号: 成 绩: 指导教师: 开课时间: 2011-2012 学年 1 学期一、 设计题目:第9题:机票预订系统2 主要内容:系统功能的基本要求: 每个航班信息的输入、每个航班的坐位信息的输入; 当客户进行机票预定时,输入客户基本信息,系统为客户安排航班; 客户能够退订机票;能够查询每个航班的预定情况、统计航班的满座率。三具体要求1. 课程设计的内容独立自主完成,课程设计报告内容完整、格式规范、排版整洁美观;2. 后台数据库采用MS SQL SERVER2005,前台界面语言不限,编写的程序代码,须有较详细的注释说明;四进度安排课程设计安排:16周星期一 讲解课程设计的内容,安排每一天的具体任务,分配并熟悉题目;星期二 需求分析:给出系统的功能需求、性能需求,并绘制DFD和DD;星期三 概念结构设计:绘制实体属性图(可选),局部ER图和全局ER图;星期四 逻辑结构设计:转换、优化、外模式的设计;星期五 物理结构设计及数据库实施;17周星期一 应用程序编制调试、整理课程设计报告,并检查;星期二 根据反馈结果修改课程设计;星期三 提交作业 上交的材料:课程设计的电子稿、打印稿、源码(SQL代码和程序代码)五成绩评定考核方法:现场验收(占50%),课程设计报告(占50%)。考核内容:学习态度(出勤情况,平时表现等)、方案合理性、各阶段的图表与程序编制质量、设计报告质量。成绩评定:优,良,中,及格,不及格。特别说明:(1)如发现抄袭,按照不及格处理。 (2)材料不齐的,考核等级降一级。电子稿件以压缩文件的形式上交,压缩命名为:11位学号+姓名正文撰写包含的内容:1、 需求分析2、 概念结构设计3、 逻辑结构设计4、 物理结构设计5、 数据库实施及应用程序编制6、 心得体会7、 参考资料正文机票预定系统一 需求分析1.1功能分析经过分析。确定了机票预订系统应具备以下主要功能:(1)航班信息管理功能 主要实现航班的一些基本信息,航班编号,票价,起飞点,目的地,起飞时间的添加,修改,删除,查询。(2)机票信息管理功能 主要实现航班座位也就是机票的一些基本信息,航班编号,座位号,机票类型的添加,删除,查询和修改功能。(3)客户信息管理功能 主要实现旅客的基本信息,包括姓名,性别,联系方式,证件号码的查询。(4)取票信息管理功能用于取票信息的管理,包括对航班基本信息,航班编号和旅客的基本信息,旅客姓名,座位号,取票时间的查询。 (5)退票信息管理功能 用于对退票信息的管理,包括对订单号,旅客姓名,联系方式,证件号码的查询。 1.2数据字典1航班信息 定义了航班的所有信息 组成有航班号,起飞地,目的地,起飞时间,票价2机票 定义了机票的有关信息。组成有航班号,座位号,座位信息,机票类型3旅客订票信息 定义了旅客有关信息。组成有旅客姓名,身份证号,性别,电话号码。4取票和账单信息 定义了取票通知相关信息。组成有旅客姓名, 取票时间,座位号,航班号,机票类型。5退票信息 定义了退票旅客的有关信息。组成有旅客姓名,身份证号,订单号,电话号码。1.3数据流图旅客机票预订系统处理旅客 订票 取票 二概念结构设计2.1概念结构设计的方法步骤(1)方法采用自底向上的方法,即自顶向下进行需求分析,在自底向上进行概念结构设计。(2)步骤第一步是实体属性图的设计,第二部是整体E-R图的设计。 2.2下面进行局部实体属性图的绘制(1)航班信息实体属性图,如图2.1.1航班信息航线编号起飞地目的地机票价格出发时间图2.1.1 航班信息实体属性图(2)航班座位信息实体属性图,如图2.1.2机票信息航班编号座位号机票类型座位等级信息图2.1.2机票信息实体属性图(3)旅客信息实体属性图,如图2.1.3旅客旅客姓名身份证号码性别联系电话图2.1.3旅客信息实体属性图(4)取票通知实体属性图,如图2.1.4取票通知和账单座位号机票类型旅客姓名取票时间航班编号图2.1.4取票通知实体属性图(5)退票信息实体属性图,如图2.1.5退票信息旅客姓名订单号身份证号电话号码图2.1.5退票信息实体属性图2.2下面进行总体E-R图的绘制总体E-R图如下图2.2.1退票信息退票购买包括旅客姓名航班编号订单号取票时间电话号航班编号身份证号旅客取票通知和账单座位号旅客姓名机票类型性别电话号姓名身份证号获取航班信息机票信息起飞地起飞时间票价目的地航班编号座位信息座位号机票类型n11nnmn1n图2.2.1总体E-R图三 逻辑结构设计(1)根据总的E-R图实体与实体之间的联系和一般的转换原则,得到如下关系模式退票信息(订单号,旅客姓名,联系方式,身份证号),“订单号”为主码旅客(旅客姓名,身份证号,联系方式,性别),“旅客姓名”为主码航班信息(航班号,票价,起飞地。目的地,起飞时间),“航班号”为主码取票通知单(旅客姓名,取票时间,身份证号,航班号,座位号),“取票时间”为主码机票信息(座位号,航班号,座位信息,机票类型),“座位信息”为主码。退票信息_旅客(订单号,旅客姓名),(订单号,旅客姓名)为主码。同时“订单号”为引用“退票信息”关系模式的订单号的外码,“旅客姓名”为引用“旅客”关系模式的旅客的外码。旅客_取票通知和账单(旅客姓名,账单号),(旅客姓名,账单号)为主码。同时“旅客姓名”为引用“旅客”关系模式的旅客姓名的外码,“账单号”为引用“取票通知和账单”关系模式的账单号的外码。旅客_航班信息(旅客姓名,航班号),(旅客姓名,航班号)为主码。同时“旅客姓名”为引用“旅客”关系模式的旅客姓名的外码,“航班号”为引用“航班信息”关系模式的航班号的外码。机票信息_航班信息(座位号,航班号),(座位号,航班号)为主码。同时“座位号”为引用“机票信息”关系模式的座位号的外码,“航班号”为引用“航班信息”关系模式的航班号的外码(2)数据库的结根据总体E-R图设计基本表结构,其相应的定义如下: 字段名数据类型长度约束描述flight number decimal10主键航班号take off placevarchar50Not Null起飞地destinationvarchar50Not Null目的地flight timetime10Not Null起飞时间priceint50Not Null票价表3-1 航班信息系统的结构字段名数据类型长度约束描述Seat numberdecimal50主键座位号Flight nmberdecimal50Not Null航班号Seat messagevarchar50Not Null座位信息Flight ticket typevarchar50Not Null机票类型表3-2机票信息表字段名数据类型长度约束描述Passage name varchar50主键旅客姓名iddecimal50Not Null身份证号Telephone decimal50Not Null联系电话sexvarchar50Not Null性别表3-3旅客信息表字段名数据类型长度约束描述Passage namevarchar50Not Null旅客姓名Get ticket timetime50主键取票时间Fight numberdecimal50Not Null航班号Seat numberdecimal50Not Null座位号Flight ticket typevarchar50Not Null机票类型表3-4取票和账单表字段名数据类型长度约束描述Order formdecimal50主键订单号Passage namevarchar50Not Null旅客姓名telephonedecimal50Not Null联系方式idvarchar50Not Null证件号码表3-5退票信息表四 物理结构设计数据库物理结构设计是指设计出数据库的物理结构模型,他是数据库在物理设备上的具体实现。经过数据库的需求分析和概念模型设计,得到数据可的逻辑结构,现在可以把设计好的逻辑结构在SQL上建立数据库及数据表。4.1表的建立和载入需要明确数据库需要建几张表,以及每张表包括的属性。在建立每张表的过程中,需要对表进行字段属性的设置。在机票预订系统中,要建立5张表,分别是:航班信息表,航班座位情况表,旅客订票信息表,取票和账单信息表,退票信息表。4.2视图的建立视图是查看数据库的一种方式。视图提供了存储预定义的查询语句作为数据库中的对象一备以后使用的能力。视图是一种逻辑对象,是一种虚拟表。在机票预订系统中,我建立了两个师徒,分别是航班和座位视图旅客和取票视图。他们分别通过飞机编号也就是flight number项和旅客信息也就是passage number 项联系起来。4.3索引的建立索引是一个单独的,物理的数据库结构,他是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据项的逻辑指针清单。五 数据库的实施和代码的编制登录sql server 2005 management在其中创建名为试卷管理系统的数据库,运用查询设计器创建。/*创建库*/create database plane_Datause plane_Data/*创建相应的表*/创建航班信息表:CREATE TABLE 航班信息 (flightnumberdecimal primary key NOT NULL identity,takeoffplace varchar(50) unique NULL ,destination varchar(50) not NULL ,price bigint not NULL) ;机票信息表:CREATE TABLE 机票信息 (seatnumber bigint primary key NOT NULL identity ,flightnumber decimal (10) unique NULL ,seatmessage bigint not NULL flightticketype varchar (50) not null) ;创建旅客信息表:CREATE TABLE 旅客信息 (passagename int primary key NOT NULL identity,id varchar (20) not NULL ,telephonenumber varchar (20) not NULL ,sex varchar(50) not NULL , ) ;创建取票和账单信息表:CREATE TABLE 取票和账单信息 (gettickettime bigint primary key NOT NULL identity,passagename varchar (20) not NULL ,flightnumber decimal (20) not NULL ,seatnumber decimal (20) not NULL ,flightticketnumber varchar(20) not NULL , );创建退票信息表:CREATE TABLE 退票信息 (orderform int primary key Not NULL identity ,passagename varchar (20) unique NULL ,telephonenumber decimal not NULL ,id varchar(20) not NULL ) ;创建ddl触发器:create trigger notdeleteon all severfor drop_databaseasprint 不能删除数据rollbackgo 分别在航班信息表,机票信息表,旅客信息表,取票通知,账单信息表这四个表建立触发器,对于表中的添加和修改数据提示错误信息。航班信息触发器代码为:create trigger a on 航班信息for insert ,updateas rasiserror(不能添加和更新数据,16,1)rollback transactiongo机票信息触发器代码为:create trigger b on 机票信息for insert ,updateas rasiserror(不能添加和更新数据,16,1)rollback transactiongo旅客信息触发器代码为:create trigger c on 旅客信息for insert ,updateas rasiserror(不能添加和更新数据,16,1)rollback transactiongo取票通知和账单触发器代码为:create trigger d on 取票通知和账单for insert ,updateas rasiserror(不能添加和更新数据,16,1)rollback transactiongo六、设计心得通过此次课程设计,我对数据库原理与应用这门学科有了更深的认识,对其中的各类知识也有了初步的整合,更加认识到此门学科的重要性。当然,我也认识到自己的不足,有许多学要我去改进的地方。例如此次课程设计,在创建数据流图,数据字典,和最后的创建数据库的时候,人称姓名我做的比较混乱,这是因为前期没有想清楚整体的思路,对整体进行必要的构思,导致后期思想有些混乱。整体上的设计我参考了一些别的同学的做法,对他们的做法进行了整合修改和扩充,再加上陈琳老师课程设计前所给我们讲的大体的思路概括,分成六个部分,最终达成此片初稿,但同时也存在一些问题。由于前面需求分析不够准确,导致在进行编码后还在不断地修改需求,所以进行了不少的重复工作,延误了进度。这个航空订票系统所需的数据比较繁琐,所以在进行数据和界面的结合需要相当大的功夫,处理更多的异常。 七 参考资料1 数据库原理与应用第二版 编著:何玉洁 梁琦图2.1.5退票信息实体属性图2.2下面进行总体E-R图的绘制总体E-R图如下图2.2.1退票信息退票购买包括旅客姓名航班编号订单号取票时间电话号航班编号身份证号旅客取票通知和账单座位号旅客姓名机票类型性别电话号姓名身份证号获取航班信息机票信息起飞地起飞时间票价目的地航班编号座位信息座位号机票类型n11nnmn1n图2.2.1总体E-R图三 逻辑结构设计(1)根据总的E-R图实体与实体之间的联系和一般的转换原则,得到如下关系模式退票信息(订单号,旅客姓名,联系方式,身份证号),“订单号”为主码旅客(旅客姓名,身份证号,联系方式,性别),“旅客姓名”为主码航班信息(航班号,票价,起飞地。目的地,起飞时间),“航班号”为主码取票通知单(旅客姓名,取票时间,身份证号,航班号,座位号),“取票时间”为主码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

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论