车票管理系统数据库.docx

上传人:b****1 文档编号:2955528 上传时间:2023-05-05 格式:DOCX 页数:14 大小:169.46KB
下载 相关 举报
车票管理系统数据库.docx_第1页
第1页 / 共14页
车票管理系统数据库.docx_第2页
第2页 / 共14页
车票管理系统数据库.docx_第3页
第3页 / 共14页
车票管理系统数据库.docx_第4页
第4页 / 共14页
车票管理系统数据库.docx_第5页
第5页 / 共14页
车票管理系统数据库.docx_第6页
第6页 / 共14页
车票管理系统数据库.docx_第7页
第7页 / 共14页
车票管理系统数据库.docx_第8页
第8页 / 共14页
车票管理系统数据库.docx_第9页
第9页 / 共14页
车票管理系统数据库.docx_第10页
第10页 / 共14页
车票管理系统数据库.docx_第11页
第11页 / 共14页
车票管理系统数据库.docx_第12页
第12页 / 共14页
车票管理系统数据库.docx_第13页
第13页 / 共14页
车票管理系统数据库.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

车票管理系统数据库.docx

《车票管理系统数据库.docx》由会员分享,可在线阅读,更多相关《车票管理系统数据库.docx(14页珍藏版)》请在冰点文库上搜索。

车票管理系统数据库.docx

车票管理系统数据库

车票管理系统数据库

实验报告

题目

车票管理系统数据库

指导老师:

邱骋

班级:

2011年(秋)计算机

学号:

1131001251845

姓名:

张彪

1实验目的

E/R图绘制、逻辑

以车票订票管理数据库为例,完成用户需求分析、概念设计阶段的

设计、物理设计,并通过SQL实现数据库设计。

通过上述过程,理解并掌握数据库设计的有关知识。

2实验要求

1)需求分析阶段要求明确数据库应用系统设计的具体需求。

2)概念设计阶段要求设计针对数据库应用系统的E/R图。

3)逻辑设计阶段要求明确这个阶段的目的和任务,方法和步骤。

4)物理设计阶段根据前面的内容,给出具体的数据库表结构。

3需求分析

3.1需求分析的任务

调查火车票管理系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操

作要求进行详细分析,形成需求分析说明书。

最重要的是调查、收集信息、分析购票人信息和流程。

处理要求、数据的安全性与完整性要求。

要求系统能有效、快速、安全、可靠和无误的完成上述操作。

并要求客户机的界面要

简单明了,易于操作,服务器程序利于维护

3.2需求分析的过程

铁路局为方便旅客,需开发一个机票车票管理系统。

为便于旅客由旅行社代替铁路局把预定车票的旅客信息,包括身份证号码、身高、年龄、旅行时间、旅行目的地,输入火车票预定系统的客户端程序,系统经过查询管理系统内的车次数据服务器后,为旅客安排车次。

系统校对无误后即印出车票给旅客。

如果某方面出现问题,旅客可以持有效证件去火车站退票。

要求系统能有效、快速、安全、可靠和无误的完成上述操作。

并要求客户机的界面要

简单明了,易于操作,服务器程序利于维护。

3.3数据字典与流程图

经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出旅客信息、车票信息的具体需求。

图1旅客购票流程图

3.3.1调查用户需求

3.3.1.1火车站办公需求

功能:

旅客持个人证件去火车站购买车票。

希望能通过旅客车票查到该旅客的车票编

3.3.1.2旅客购票需求

交费功能:

交费、退费

3.3.1.3车次信息需求

查询功能:

车次号(始发站、终到站、发车时间)

3.4系统框架

在调查完了用户需求之后,就要开始分析用户需求。

在此,我们采用自顶向下的结构

化分析方法(SA方法)。

首先,定义全局概念结构的框架,如图2所示。

火车票管理系统

 

图2车票管理系统总框架图

各子系统需要进一步细化。

旅客信息系统为例进一步细化,如图3所示。

图3旅客信息系统细化

图4查询乘客信息功能

 

图5车票信息系统能查询到的内容

 

 

图6退票信息系统细化

图7退票信息系统细化

将所有子系统全部细化。

将所有用户需求分析完毕之后,就要开始构造数据字典了。

经分析之后,本系统要用到五个基本表:

退票信息表,乘客信息表,车次信息表,补票信

息表,车次座位信息表。

数据结构定义如表1所示。

表1数据结构定义

数据结构名

含义说明

组成

退票信息

定义了乘客退票的有关信息

车次,上车地,下车地,价格

乘客

定义了乘客有关信息

身份证号,年龄,

工作单位,身高

车次信息表

定义了车次

的有关信息

车次,始发站,终到站,发车时间

补票信息

定义了乘客补票的有关信息

车次,上车地,下车地,价格

车票座位息表

定义了座位有关信息

车次,座位号,身份证号,车票类型

4概念结构设计

4.1概念结构设计的方法与步骤

4.1.1概念结构设计的方法

概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。

对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。

4.1.2概念结构设计的步骤

第一步是进行局部视图的设计:

由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。

因此我们先逐一的设计分E-R图。

第二步是进行视图的集成:

各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。

我想采用一次集成两个分E-R图的方式。

4.2数据抽象与局部视图设计

按照图2火车票管理系统总框架图,设计实体属性图以及局部E-R图。

图9补票信息实体属性图

图10退票信息实体属性图

图13车次实体属性图

 

图14座位实体属性图

图15乘客购票局部E-R图

图16乘客退票局部E-R图

 

图17乘客补票局部E-R图

图18乘客座位局部E-R图

4.2.1视图的集成

经过逐步细化再进行每两个一集成初步形成一个E-R图,最后得到图3.4总体概念结

构E-R图。

5逻辑结构设计

5.1E-R图向关系模型的转换

将图19总体概念结构E-R图转化成关系模型。

乘客(身份证号,工作单位,身高,年龄)

车次信息(车次,始发站,终到站,发车时间)

退票信息(下车地,车次,上车地,价格)

补票信息(上车地,车次,下车地,价格)

座位信息(座位号,身份证号,车次,车票类型)

5.2数据模型的优化

将转化的关系模式进行优化,最终达到第三范式。

1、确定数据依赖

乘客信息(身份证号,工作单位,身高,年龄)根据这个关系写出数据依赖

身份证号t工作单位,身份证号t年龄

车次信息(车次,始发站,终到站,发车时间)

车次T始发站,车次T终到站,车次T发车时间

退票信息(下车地,车次,上车地,价格)

(下车地,车次)T上车地,(下车地,车次)T价格

补票信息(上车地,车次,下车地,价格)

(上车地,车次)T下车地,(上车地,车次)T价格

座位信息(座位号,身份证号,车次,车票类型)

座位号T身份证号,座位号T车次,座位号T车票类型

2、对各关系模式间数据依赖进行极小化处理,消除冗余

身份证号T工作单位,身份证号T年龄

车次T始发站,车次T终到站,车次T发车时间

(下车地,车次)T上车地,(下车地,车次)T价格

(上车地,车次)T下车地,(上车地,车次)T价格

座位号T身份证号,座位号T车次,座位号T车票类型

3、看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解

最终分解成第三范式:

(身份证号,工作单位,年龄)(车次,始发站,终到站,发车时间)

(下车地,车次)(下车地,价格)(上车地,车次)(上车地,价格)

(座位号,身份证号,车次,车票类型)

5.3数据库的结构

给出机票预定系统基本表结构图。

图20各表的结构

根据总体结构图设计各表的结构,其相应标的定义如下:

表2乘客信息系统的结构

字段名

数据类型

长度

约束

描述

id

decimal

20

主键

身份证号

age

decimal

3

不为空

年龄

status

varchar

50

不为空

身高

Work_department

Varchar

50

工作单位

 

表3退票信息系统的结构

字段名

数据类型

长度

约束

描述

Trainnumber

decimal

5

主键

车次

Get_on_place

varchar

50

不为空

上车地

Get_off_place

decimal

50

主键

下车地

price

decimal

4

不为空

价格

表4车次信息表系统的结构

字段名

数据类型

长度

约束

描述

Trainnumber

decimal

5

主键

车次

Take_off_place

varchar

50

不为空

始发站

destination

varchar

50

不为空

终到站

Train_time

time

time

不为空

发车时间

 

表5补票通知单系统的结构

字段名

数据类型

长度

约束

Trainnumber

decimal

10000

主键

车次

Get_on_place

varchar

50

主键

上车地

Get_off_place

decimal

50

不为空

下车地

price

decimal

1000

不为空

价格

 

表6车次座位信息表

字段名

数据类型

长度

约束

描述

Seat_number

decimal

6

主键

座位号

Trainnumber

decimal

5

不为空

车次

Id

decimal

20

不为空

身份证号

Trian_ticket_type

varchar

50

不为空

车票类型

6数据库的实施

6.1表的建立与数据的载入

CREATETABLEADMINISTRATOR.

PASSENGER(IDDECIMAL(20,0)NOTNULL,

AGEDECIMAL(2,0)NOTNULL,

STATASVARCHAR(50)NOTNULL,

"WORKDEPARTMENT"VARCHAR(50),

CONSTRAINTIDNOPRIMARYKEY(ID))

CREATETABLEADMINISTRATOR.TUIPIAO

("TRAINNUMBER"DECIMAL(5,0)NOTNULL,

"GETONPLACE"VARCHAR(50)NOTNULL,

"TAKEOFFPLACE"VARCHAR(50)NOTNULL,

PRICEDECIMAL(5,0)NOTNULL,

CONSTRAINTCC1230206137906PRIMARYKEY("TRAINNUMBER"))

CREATETABLEADMINISTRATOR.CHECI("TRAINNUMBER"VARCHAR(5)NOTNULL,"GET

ONPLACE"VARCHAR(50)NOTNULL,"TAKEOFFPLACE"VARCHAR(50)NOTNULL,TIME

TIMENOTNULL,CONSTRAINTCC1230206022062PRIMARYKEY("TRAINNUMBER"))

CREATETABLEADMINISTRATOR.BUPIAO("TRAINNUMBER"DECIMAL(5,0)NOTNULL

"GETONPLACE"VARCHAR(50)NOTNULL,"TAKEOFFPLACE"VARCHAR(50)NOTNULL,

PRICEDECIMAL(5,0)NOTNULL,CONSTRAINTCC1230206289890PRIMARYKEY("TRAINNUMBER"))

CREATETABLEADMINISTRATOR.ZUOWEI("SEATNUMBER"DECIMAL(6,0)NOTNULL

NOTNULL,IDDECIMAL(20,0)NOTNULL,"TRAINSEAT

CONSTRAINTCC1230206478093PRIMARYKEY

以及每个表中所要包括的属性。

在建立表的过程中。

要对每个表

("SEATNUMBER"))

需要明确数据库需要建立几张表,进行字段属性的设置。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2