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