旅游信息管理系统

发布时间:2019-12-08 09:48:45

Shanghai Dianji University

课程设计报告

课程名称:___数据库课程设计报告______

名:________张广琪___________

班级学号:______BX0901___________

指导教师:___________沈学东 ________

完成日期:_______2011-12-16_________

Electronic Information School

2011 12



1概述

1.1设计要求

1、需求分析:根据自己的选题,绘制数据流图。

2、概念结构设计:绘制所选题目详细的E-R图。

3、逻辑结构设计:将E-R图转换成等价的关系模式;按需求对关系模式进行规范化;对规范化后的模式进行评价,调整模式,使其满足性能、存储等方面要求;根据局部应用需要设计外模式。

4、设计小结:总结课程设计的过程、体会及建议。

5、其他:参考文献、致谢等。

1.2设计报告要求

1、问题描述。包括此问题的理论和实际两方面。

2、解决方案。包括:E-R模型要设计规范、合理,关系模式的设计至少要满足第三范式,数据库的设计要考虑安全性和完整性的要求。

3、解决方案中所设计的E-R模型、关系模式的描述与具体实现的说明。

4、具体的解决实例。

1.3课程设计的一般步骤

课程设计大体分五个阶段:

1、选题与搜集资料:选择课题,进行系统调查,搜集资料。

2、分析与设计:根据搜集的资料,进行功能与数据分析,并进行数据库、系统功能等设计。

3程序设计:运用掌握的语言,编写程序,实现所设计的模块功能。

4调试与测试:自行调试程序,成员交叉测试程序,并记录测试情况。

5、验收与评分:指导教师对每个的数据库系统进行综合验收,结合设计报告,根据课程设计成绩的评定方法,评出成绩。

2设计内容

2.1 需求分析

随着旅游行业的快速发展,旅游行业的工作人员每天都要面对大量的游客信息、旅游路线信息以及与旅游相关的交通、食宿等方面的信息。如何科学地管理这些信息是旅游行业急需解决的问题。本课程设计通过对某旅行社的调查,以用户需求为依据,完成了对一个小型的国内旅游管理信息系统的数据库设计。

2.11 功能实现

通过对旅游行业业务的了解,与该行业的工作人员的交谈,旅游管理信息系统需要完成的功能主要有:

有关旅游基本信息的输入,包括旅游线路、旅游班次、旅游团、游客、导游、交通工具、宾馆以及保险等基本信息的输入。

对旅游线路基本信息的查询、修改。

对旅游班次基本信息的查询、修改。

对旅游团基本信息的查询、修改。

对游客基本信息的查询、修改。

对导游基本信息的查询、修改。。

对宾馆基本信息的查询、修改。

对保险基本信息的查询、修改。

由以上需求分析可画出旅游管理系统数据流图:

1-1 旅游管理系统数据流图

2.12 具体实体需求分析

针对旅游管理信息系统的需求,设计如下面所示的数据项和数据结构:

旅游路线基本信息,包括的数据项有:路线号、起点、终点、天数、主要景点等。

旅游班次基本信息,包括的数据项有:班次号、出发日期、回程日期、旅游标准、报价等。

旅游团基本信息,包括的数据项有:团号、团名、人数、联系人、地址、电话等。

游客基本信息,包括的数据项有:游客编码、姓名、性别、年龄、身份证号码、住址、电话等。

导游基本信息,包括的数据项有:导游编号、姓名、性别、年龄、身份证号码、住址、电话、语种、等级、业绩等。

宾馆基本信息,包括的数据项有:宾馆编号、宾馆名、城市、星级、标准房价、联系人、职务、地址、电话等。

保险单基本信息,包括的数据项有:保险单编号、保险费、投保日期等。

2.2 划分功能模块

根据系统功能的需求分析和具体旅游管理系统的特点,经过模块化的分析,得到如下图所示的系统功能模块结构图。

1-2 系统功能模块结构图

2.3数据字典

2.31 数据项

数据字典是各类数据描述的集合,是进行详细的数据收集和数据分析所获得主要的成果,数据字典是对系统所用到的所有表结构的描述,旅游管理系统的主要数据如下列各表所示:

1-1 旅游路线基本信息Roadline

序号

字段

别名

数据类型

数据长度

1

Rnum

路线号

char

10

Y

2

Rstart

起点

varchar

20

N

3

Rend

终点

Varchar

20

N

4

Rdays

天数

smallint

N

5

Rscenery

主要景点

varchar

20

N



1-2 旅游班次基本信息Batch

序号

字段

别名

数据类型

数据长度

1

Bnum

班次号

char

10

Y

2

Bstart

出发日期

datetime

N

3

Breturn

返程日期

datetime

N

4

Bstandard

旅游标准

varchar

10

N

5

Bprice

报价

Int

N

6

Rnum

路线号

char

10

F

7

Traffictools

交通工具

Varchar

10

N



1-3 旅游团基本信息Team

序号

字段

别名

数据类型

数据长度

1

Tnum

团号

char

10

Y

2

Tname

团名

varchar

20

N

3

Tpersons

人数

int

N

4

Tlinkman

联系人

varchar

20

N

5

Ttelephone

电话

Char

11

N

6

Taddr

地址

Varchar

50

N

7

Bnum

班次号

char

10

F

8

Gnum

导游编号

Char

10

F

9

Hnum

宾馆编号

Char

10

F



1-4 游客基本信息Visitor

序号

字段

别名

数据类型

数据长度

1

Vnum

游客编号

Char

10

Y

2

Vname

姓名

Varchar

20

N

3

Vsex

性别

Char

2

N

4

Vage

年龄

Smallint

N

5

Vstatusnum

身份证号码

Char

18

N

6

Vaddr

住址

Varchar

50

N

7

Vtelephone

电话

Char

11

N

8

Tnum

团号

char

10

F

9

Inum

保险单编号

Char

10

F



1-5 导游基本信息Guide

序号

字段

别名

数据类型

数据长度

1

Gnum

导游编号

Char

10

Y

2

Gname

姓名

Varchar

20

N

3

Gsex

性别

Char

2

N

4

Gage

年龄

Smallint

N

5

Gstatusnum

身份证号码

Char

18

N

6

Gaddr

住址

Varchar

50

N

7

Gtelephone

电话

Char

11

N

8

Gkind

语种

Varchar

10

N

9

Glevel

等级

Char

5

N

10

Gachievement

业绩

Varchar`

50

N



1-6 宾馆基本信息Hotel

序号

字段

别名

数据类型

数据长度

1

Hnum

宾馆编号

Char

10

Y

2

Hname

宾馆名

Varchar

20

N

3

Hcity

城市

varchar

20

N

4

Hlevel

星级

Char

5

N

5

Hprice

标准房价

Int

N

6

Hlinkman

联系人

Varchar

10

N

7

Hposition

职务

Varchar

10

N

8

Haddr

地址

Varchar

50

N

9

Htelephone

电话

Char

11

N



1-7 保险单基本信息Insurence

序号

字段

别名

数据类型

数据长度

1

Inum

保险单编号

Char

10

Y

2

Iprice

保险费

Int

N

3

Idate

投保日期

Datetime

N

4

Ieffecttime

有效期限

Datetime

N

2.32 数据结构

数据结构反映了数据之间的组合关系。一个数据结构可以有若干个数据项组成,也可以有若干个数据结构组成,或若干个数据项和数据结构混合组成。经过数据项和需求分析,本系统费数据结构表可设计如下:

1-8 数据结构表

数据结构名

含义说明

组成部分

游客信息管理

描述游客基本信息

游客编码+姓名+性别+年龄+身份证号码+住址+电话

团体信息管理

描述旅游行程信息

团号+团名+人数+联系人+地址+电话+班次号+导游编号

班次信息管理

描述旅游细节信息

班次号+出发日期+回程日期+旅游标准+报价+交通工+路线号

系统管理

用户信息更改,帮助

2.33 数据流

数据流是数据结构在系统中传输的途径。通过对用户的需求分析以及数据项和数据流的设计,得出相应的数据流描述如下:

1-9 数据流定义表

编号

数据流名

组成

流量

备注

01

游客信息

游客编码+姓名+性别+年龄+身份证号码+住址+电话

游客基本信息

02

团体信息

团号+团名+人数+联系人+地址+电话

一般

团体信息

03

班次信息

班次号+出发日期+回程日期+旅游标准+报价+交通工具

一般

行程班次信息

04

路线信息

路线号+起点+终点+天数+主要景点

一般

路线信息

05

宾馆信息

宾馆编号+宾馆名+城市+星级+标准房价+联系人+职务+地址+电话

一般

宾馆基本信息

06

导游信息

导游编号+姓名+性别+年龄+身份证号码+住址+电话+语种+等级+业绩

一般

导游基本信息

07

保险信息

保险单编号+保险费+投保日期+有效期截止

一般

保险信息简介

2.4概念结构设计

2.41 实体E-R

1-3 保险单实体E-R

1-4 宾馆实体E-R

1-5 游客实体E-R 1-6 旅游班次实体E-R

1-7 导游实体E-R 1-8 旅游路线实体E-R

1-9 旅游团实体E-R

2.42 系统E-R

1-10 系统E-R

2.5逻辑结构设计

2.51 关系模型

将概念结构设计阶段设计好的基本E-R图转换为关系模型,如下所示

1.Roadline实体可转换为:

RoadlineRnum,Rstart,Rend,Rdays,Rscenery

Rnum-路线号、Rstart-起点、Rend-终点、Rdays-天数、Rsc;‘;enery-主要景点等。

2.Batch实体可转换为:

Batch(Bnum,Bstartdate,Bredate,Bstandard,Bprice,Traffictools)

Bnum-班次号、Bstartdate-出发日期、Bredate-回程日期、Bstandard-旅游标准、Bprice-报价, Traffictools-交通工具等。

3.Team实体可转换为:

Team(Tnum,Tname,Tpersons,Tlinkman,Taddr,Ttelephone,Bnum,Hnum,Gnum)

Tnum-团号、Tname-团名、Tpersons-人数、Tlinkman-联系人、Taddr-地址、

Ttelephone-电话,Bnum-班次编号,Gnum-导游编号,Hnum-旅馆编号等。

4.Visitor实体可转换为:

VisitorVnum ,Vname,Vsex,Vage,Vstatusnum,Vaddr,Vtelephone,Tnum,InumVnun-游客编码、Vname-姓名、Vsex-性别、Vage-年龄、Vstatusnum-身份证号码、Vaddr-住址、Vtelephone-电话,Tnum- 团号,Inum-保险单号等。

5.Guide实体模型可转化关系模式:

Guide(Gnum,Gname,Gsex,Gage,Gstatusnum,Gaddr,Gtelephone,Gkind,Glevel,Gachievement)

Gnum-导游编号、Gname-姓名、Gsex-性别、Gage-年龄、Gstatusnum-身份证号码、Gaddr-住址、Gtelephone-电话、Gkind-语种、Glevel-等级、Gachievement-业绩等。

6.Hotel实体模型可转化关系模式:

Hotel(Hnum,Hname,Hcity,Hlevel,Hprice,Hlinkman,Hposition,Haddr,Htelephone,)

Hnum-宾馆编号、Hname-宾馆名、Hciy城市、Hlevel星级、Hprice标准房价、Hlinkman-联系人、Hposition-职务、Haddr地址、Htelephone-电话等。

7.Isurence实体模型可转化关系模式:

Isurence(Inum,Iprice,Idatetime,Ieffectdate)

Inum-保险单编号、Iprice-保险费、Idatetime-投保日期,Ieffectdate-有效期截止日期等。

2.52 物理模型

将生成概念模型通过在PowerDesigner工具选择Tools—Generate Physical Model命令就可以转换成物理模型,由于条件限制,本次设计未能实现这种转换,因而这里不再赘述。

2.6物理结构设计

2.61 确定数据库的存储结构

由于本系统建立的数据库不是很大,所以数据存储采用的是磁盘的一个分区。

2.62 存取方法和优化方法

常用的存取方法主要有三种:第一种是索引方法;第二种是聚簇方法;第三种方法是HASH法。使用索引法可以大大减少数据的查询时间。但要根据数据库的需求对各种方法进行择优寻求,视情况而定。

2.7数据的实施和维护

2.71数据库的实施

数据库的实施主要是根据逻辑结构和物理结构设计的结果,在计算机系统上建立实际的数据库结构,导入数据并进行程序调试。

由于没有PowerDesigner工具的支持,故这里直接在SQL server中直接创建旅游管理系统基本表的信息。

1-11 Batch表的创建信息结构图

1-12 Guide表的创建信息结构图

1-13 Hotel表的创建信息结构图

1-14 Insurence表的创建信息结构图

1-15 Roadline表的创建信息结构图

1-16 Team表的创建信息结构图

1-17 Visitor表的创建信息结构图

1-18 Team中创建Bnum为外键

1-19 创建属性约束

1-20 Batch实体中创建Rnum为外键

2.72数据的载入

1-21 Batch实体部分基本信息数据图

1-22 Guide实体部分基本信息数据图

1-23 Roadline实体部分基本信息数据图

1-24 Team实体部分基本信息数据图

1-25 Visitor实体部分基本信息数据图

1-26 Hotel实体部分基本信息数据图

1-27 Insurence实体部分基本信息数据图

2.73数据的试运行

1)数据基本信息查询

1-28 数据基本信息查询

2)数据基本信息的插入

1-29 数据基本信息的插入

3)数据基本信息的删除

1-30 数据基本信息的删除

4)数据基本信息的更新

1-31数据基本信息的更新

2.74数据库的运行和维护

数据库试运行合格后,数据库开发工作就基本完成,即可以投入正式运行了。但是,由于环境不断在变化,数据库运行过程中物理存储业会不断变化,对以数据库设计进行评价、调整、维修和改善等工作是一个长期的任务,也是设计工作的继续和提高。

在数据库运行阶段。对数据经常性的维护工作主要是有DBA完成的,主要包括:

数据库的存储和恢复

数据库的安全性、完整性控制

数据库性能的监督、分析和改造

数据库的重组与重构造。

3课程设计小结

3.1设计自我评价和结果分析

首先对自己这次设计的这个数据库进行做一下诚恳的评价。总的来说,这次课设的效果不好,主要是因为平时理论没跟能跟得上实践,从而造成了两手都不抓,什么都抓不住的现状!从数据库的物理结构来讲,没能实现其很好的存取和优化方法,其功能中也没有涉及使用触发器的,其实我根本不知道触发器是用来干嘛的。对数据库的安全机制,角色管理使用权限我也模棱两可的,不知道究竟这些功能实现了没有。其次,从数据库概念结构来看,我觉得(我是说我自认为,我不敢肯定的)我这方面做的还可以,基本上关系模式可以达到第三范式了,我实在发不现里面有哪些因素不具备3范式的遗传特性,因而我就私下里这么认为了。最后,从外形框架上看,我的数据库其实不配叫数据库了,如果是,他也就像人群中的木偶一样,只具有数据库最原始的模样,而没有其现代化的功能模块调用机制。说我不会设计前台吧,我觉得有点亏,毕竟我对C#情有独钟,即使是不能顺利设计出来,但经历了风雨,总归能看见彩虹。可我就是没有心思去做,那就恭维一下自己力有余而心不足吧。

结果分析,对于这次的数据库实现的功能,我觉得还算行吧。不会做和不想做的也就算了,凡是做过了的总归有点成果吧。本数据库可以进行一些简单的查询、插入、删除、更新等小操作,而且做起来也很简单。但是对数据库运行和维护做的不好,因为我根本就是不知道如何运行和维护,更何况数据库的运行在我看来是要以软件来作为精神寄托的,没有软件的依托,再好的数据库也是空中楼阁,不屑一顾的。因而,对其运行我不多做解释。至于维护,那就更好说了。压根就没有投入使用数据库,那何来对其进行维护呢?

3.2致谢

首先我们先好好感谢一下我们敬爱的老师,是他每周不拉课的给我们教授每一章节的内容,让我们有机会坐在这里优哉游哉的做着数据库的课程设计。我依然清晰的记得,老师想教授幼儿园小学生那样一遍遍的问我们听懂了没有,对不对啊?很好……当时我觉得是很搞,但事后自行想想,是老师含辛茹苦,不辞辛劳的培育,让我们收敛一下那张狂的个性,从新像小学生那样好好听课,多学点东东。其次我要感谢一下同甘共苦的同学,是他们时时刻刻在帮助我成长和学习,在此次课设过程中,多亏了他们的大力支持帮助,我才顺利完成实验报告和数据库设计。总之,要感谢还有很多,这里纸张有限,不再赘述。

参考文献

《数据库应用与技术》中国铁道出版社,贾铁军主编;

SQL sever2005经典实例教程》电子工业出版社,袁然,王诚梅编著;

旅游信息管理系统

相关推荐