火车订票系统.docx

上传人:b****6 文档编号:7154165 上传时间:2023-01-21 格式:DOCX 页数:23 大小:43.36KB
下载 相关 举报
火车订票系统.docx_第1页
第1页 / 共23页
火车订票系统.docx_第2页
第2页 / 共23页
火车订票系统.docx_第3页
第3页 / 共23页
火车订票系统.docx_第4页
第4页 / 共23页
火车订票系统.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

火车订票系统.docx

《火车订票系统.docx》由会员分享,可在线阅读,更多相关《火车订票系统.docx(23页珍藏版)》请在冰豆网上搜索。

火车订票系统.docx

火车订票系统

课程设计报告

 

课程名称数据库课程设计

设计题目火车票订票系统

专业班级软件1241

姓名王新渊

学号1204431127

指导教师张秀坤、边蓓蓓

起止时间2014年3月10日-3月14日

 

成绩评定

考核

内容

设计

表现

设计

报告

答辩

综合

评定

成绩

计算机技术与工程学院

 

课程设计考核和成绩评定办法

1.课程设计的考核由指导教师根据设计表现、设计报告、设计成果、答辩等几个方面,给出各项权重,综合评定。

该设计考核教研室主任审核,主管院长审批备案。

2.成绩评定采用五级分制,即优、良、中、及格、不及格。

3.参加本次设计时间不足三分之二或旷课四天以上者,不得参加本次考核,按不及格处理。

4.课程设计结束一周内,指导教师提交成绩和设计总结。

5.设计过程考核和成绩在教师手册中有记载。

课程设计报告内容

课程设计报告内容、格式各专业根据专业不同统一规范,经教研室主任审核、主管院长审批备案。

 

注:

1.课程设计任务书和指导书在课程设计前发给学生,设计任务书放置在设计报告封面后和正文目录前。

2.为了节省纸张,保护环境,便于保管实习报告,统一采用A4纸,实习报告建议双面打印(正文采用宋体五号字)或手写。

 

2013-2014第2学期《数据库课程设计》任务书

班级:

软件1241、2;指导教师:

张秀坤、边蓓蓓、赵慧玲、孟宪颖;

地点:

计算机实验室;时间:

第3周。

一、课程设计题目

选择下列题目中的一种:

选择下列题目中的一种:

1.小区物业管理系统2.高校工资管理系统

3.教材管理系统4.酒店管理系统

5.高校教职工管理系统6.图书管理系统

7.火车订票管理系统8.企业人事管理系统

9.商品库存管理系统10.医院药品管理系统

11.学生成绩管理系统12.高校学籍管理系统

13.航空订票管理系统14.学费管理系统

15.城市居民户籍管理系统16.超市管理系统

17.学费管理系统18.车辆管理系统

19.房地产管理系统20.企业物资管理系统

21、其它自选题目

注:

每个学生可根据自己的学识水平,设计能力,在指导教师指导下选择所设计的题目。

二、目的与要求

1、目的

通过课程设计,让学生能够全面了解数据库应用系统的整个开发过程,验证课堂教学中的理论;掌握数据库系统的基本概念、基本原理及应用技术;掌握SQL语言的定义和各种操作能力,进一步掌握SQL语言的数据库编程技能;学会利用课堂上已学过的数据库知识进行数据库设计;使学生对开发信息管理系统有一个总体认识,可使学生得到很好锻炼,为以后学习、工作打下坚实基础。

2、基本要求

(1)要求独立完成自己题目的课程设计,如有抄袭,成绩按不及格处理。

(2)要求学生利用数据库原理课程所学知识和方法独立完成所布置题目。

(3)要求所设计的系统规模适中,用SQL语句实现基本的增、删、改、查询功能。

(4)数据库中至少要包含三个表,且每个表都要满足3NF,指明主码、外码等。

(5)尽量多的使用SQLServer2005中的对象,如:

视图、触发器、约束、默认、规则、索引等。

(6)简单的系统与功能分析,建立数据结构表。

(7)每天下机时,要及时将自己的开发拷贝带走;上机期间,学生要服从指导教师的统一安排,遵守机房制度;严格遵守纪律,不迟到,不早退,无故缺勤者,成绩按不及格处理。

三、设计方法

(1)设计题目确定、申报、素材准备与设计。

(2)系统需求分析与功能设计:

阐明应用系统背景,组织结构情况以及需求分析的过程,并绘制出数据流程图,写出数据字典。

(3)概念结构设计:

根据概念结构设计的基本原则,确定概念模型,并阐明分析步骤和理论依据完成数据库的概念设计,画出E-R图。

(4)逻辑结构设计:

根据需求分析和概念模型,将实体及实体间的联系按一定的转换规则转换为关系模型,写出转换步骤及相应的理论依据,并确定主码、外码。

按数据库设计方法和规范化理论得出符合3NF的逻辑模型。

(5)利用SQLServer2005建立相应的数据库对象。

(6)利用SQL语句实现相应功能。

(7)编写数据库课程设计报告并提交相应资料与成果。

四、任务安排

(一)时间:

1周。

具体安排如下:

1、确定题目,需求分析。

2、概要设计、逻辑设计。

3、建立数据库及其操作。

4、上机考核验收答辩。

5、写课程设计报告并提交。

(二)地点:

计算机综合实验室

五、调试

在机房进行调试,可完成相应功能。

记录调试过程中遇到的问题及解决方法,写在课程设计报告中。

六、答辩与评分标准

通过设计答辩方式,并结合学生的动手能力,独立分析解决问题的能力和创新精神,总结报告和答辩水平以及学习态度综合考评。

成绩按五级分进行评定,成绩分为优、良、中、及格、不及格。

1、平时表现:

30分;

2、课程设计报告:

30分;

3、课程设计答辩:

40分,其中完成基本功能30分,回答问题10分。

 

一、数据库需求分析

1、需求分析

1.1需求分析的任务

调查火车票订票系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操作要求进行详细分析,形成需求分析说明书。

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

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

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

并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。

1.2需求分析的过程

火车站为方便旅客,需开发一个火车票订票系统。

为便于旅客由网上订票,把预定火车票的旅客信息,包括姓名、性别、工作单位、身份证号码、出发时间、出发地目的地,输入火车票订票系统的客户端程序,系统经过查询火车站内的列车车次数据服务器后,为旅客安排列车,印出取票通知。

旅客在火车出发前一天凭取票通知和帐单交款后取票,系统校对无误后即印出火车票给旅客。

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

确定系统边界

明确购票人需求

熟悉订票流程

调查应用领域总体情况

概念设计

 

用户,数据库设计人员

图1需求分析过程

1.3可行性研究分析

该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。

我们在这里主要从技术可行性、经济可行性和操作可行性三方面进行分析。

1.3.1经济可行性

本系统所用到的应用软件、硬件系统都易于获得.因此,开发成本较低。

而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。

所以,从经济的角度来看,该系统可行。

1.3.2技术可行性

开发工具:

eclipse

数据库环境:

SQLServer2000

系统环境:

MicrosoftWindows2000或以上版本。

系统实现依靠相对比较熟悉的java语言和SQLServer2005数据库系统,其基本操作实质还是对数据库进行添加、删除、查找等操作。

1.3.3操作可行性

本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。

这就要求系统能够提供良好的用户接口,易用的人机交互界面。

要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。

界面简洁友好,操作方便。

1.4项目开发计划安排

由于这是一项团队合作的项目,所以,每个人都有自己主要负责的一部分,但整体的构架每位成员都必须了解,熟悉,下面是具体安排表。

姓名

职务

时间

具体工作

姜玉利

组长

全程

信息收集,需求分析,编程

乐刚

组员

中期

编写程序代码

杨福

组员

前期

详细设计

任海涛

组员

后期

系统实现与维护

二、功能设计

1.旅客通过网站登录官网。

2.旅客可以查询与修改车票信息。

3.旅客可以订票和修改订单信息。

三、概念设计

3.1系统流程图

系统主要采取自顶向下,自底向上,逐步扩张的方法。

系统顶层流程图如下图3.1所示。

图3.2——图3.5为各模块详细系统流程图。

 

需求

 

火车站网上订票系统

相应信息

反馈意见

系统数据库

 

订票系统

退票系统

查询系统

图3.1顶层系统流程图

输入所需车次的信息

符合用户需求的车次信息

需求

查询系统

 

系统数据库

图3.2车次信息查询系统流程图

 

符合用户需求的订单信息

需求

输入查询条件

系统数据库

查询系统

 

图3.3订单信息查询系统流程图

 

输入订票信息

需求

反馈意见

订票系统

 

系统数据库

图3.4订票系统流程图

3.2数据抽象,E-R图分析

3.2.1数据抽象

由需求分析的结果可知,本系统设计的实体包括:

用户基本信息(用户名,用户密码,用户类型)

车次基本信息(车次号,出发地,目的地,票价,发车日期,发车时间,剩余车票数)

订单基本信息(订单号,身份证号,车次号,发车时间,出发地,目的地,票价,座位类型,数量)

3.2.2E-R

由上述分析得到系统的E—R图:

(1)每位用户可以查询多个车次,每个课程可供多位用户查询。

(多对多关系)

 

剩余票数

用户姓名

发车时间

车次号

车票类型

用户密码号

查询

车次

用户

用户类型

票价

目的地

出发地

(2)每个用户可以订购多张火车票,一张车票只能给一位用户。

(一对多关系),

每个用户只能有一种订票信息,每种订票信息只能为一位用户服务。

(一对一关系)

目的地

出发地

订单号

用户类型

车次号

订票

用户姓名

身份证号

订票单

用户

发车日期

总价

用户密码

用户姓名

座位类型

3.3系统视图的集成

用户类型

用户密码

用户姓名

出发时间

用户

查询与修改

座位类型

车次信息

订票与修改

票价

剩余车票数

发车日期

总价

订单号

订票单

身份证号码

出发地

发车时间

车次

座位类型

用户姓名

目的地

3.4数据字典

经过可行性分析和初步需求调查,抽象出该系统的如下表:

Name

Code

用户账号

name

用户密码

pwd

用户姓名

cname

身份证号

idno

车次号

trno

出发地

trfrom

目的地

trto

票价

price

发车时间

trtime

座位类型

trtyple

订单号

orno

剩余的票数

sysum

订票数量

piaoshu

四、逻辑设计

4.1模块设计

本项目火车站网上订票系统主要分为三个模块,其中信息查询又可分为车次查询和订单查询两个部分。

其层次图如图所示。

 

退票

 

4.1.1查询系统模块

查询信息系统

订单查询

车次查询

用户姓名

座位类型

票价

发车时间

车次号

订单号

出发地

目的地

位类型

发车时间

剩余车票数

目的地

出发地

票价

车次号

身份证号

订票数量

 

4.1.2订票系统模块

订票系统

座位类型

发车时间

车次号

目的地

用户姓名

出发地

用户姓名

身份证号

订票数量

 

4.2数据库表设计

数据项是数据库的关系中不可再分的数据单位,下表分别列出了数据的名数据库中用到的表:

表1:

用户信息表userinfo

属性名

数据类型

可否为空

含义

name

char(30)

用户账号(主码)

pwd

Char(30)

用户密码

leixing

Char(20)

用户类型

表2:

车次信息表traininfo

属性名

数据类型

可否为空

含义

trno

Char(20)

车次号(主码)

trfrom

char(60)

出发地

trto

char(60)

目的地

price

Char(20)

票价

trtime

Char(20)

发车时间

sysum

Char(20)

剩余车票数

trtyple

Char(20)

座位类型

表3:

订单信息表orderinfo

属性名

数据类型

可否为空

含义

trno

Char(20)

车次号

trtime

Char(20)

发车日期

price

Char(20)

票价

trtyple

Char(20)

座位类型

idno

Char(20)

身份证号码(主码)

trfrom

Char(20)

出发地

trto

Char(20)

目的地

Cname

Char(20)

用户姓名

Piaoshu

Char(20)

订票数量

5、数据库对象

表:

用户信息表userinfo、车次信息表traininfo、订单信息表orderinfo

索引:

车次号

视图:

[dbo].[View_1]

触发器:

tigger

用户:

旅客

六、操作语句

6.1DB设计

6.1.1建立数据库

CREATEDATABASE[ticket]

CONTAINMENT=NONE

ONPRIMARY

(NAME=N'ticket',FILENAME=N'C:

\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\ticket.mdf',SIZE=5120KB,MAXSIZE=UNLIMITED,FILEGROWTH=1024KB)

LOGON

(NAME=N'ticket_log',FILENAME=N'C:

\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\ticket_log.ldf',SIZE=1024KB,MAXSIZE=2048GB,FILEGROWTH=10%)

GO

6.1.2建立用户信息表

USE[ticket]

GO

SETANSI_NULLSON

GO

SETQUOTED_IDENTIFIERON

GO

SETANSI_PADDINGON

GO

CREATETABLE[dbo].[用户信息表](

[用户帐号][char](30)NOTNULL,

[用户密码][char](30)NOTNULL,

[用户类型][char](20)NOTNULL

)ON[PRIMARY]

GO

SETANSI_PADDINGOFF

GO

6.1.3建立车次信息表

USE[ticket]

GO

SETANSI_NULLSON

GO

SETQUOTED_IDENTIFIERON

GO

SETANSI_PADDINGON

GO

CREATETABLE[dbo].[车次信息表](

[车次号][char](20)NOTNULL,

[出发地][char](60)NOTNULL,

[目的地][char](60)NOTNULL,

[票价][char](20)NOTNULL,

[发车时间][char](20)NOTNULL,

[剩余票数][char](20)NULL,

[座位类型][char](20)NOTNULL,

CONSTRAINT[PK_traininfo]PRIMARYKEYCLUSTERED

[车次号]ASC

)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]

)ON[PRIMARY]

GO

SETANSI_PADDINGOFF

GO

6.1.4建立订单信息表

USE[ticket]

GO

SETANSI_NULLSON

GO

SETQUOTED_IDENTIFIERON

GO

SETANSI_PADDINGON

GO

CREATETABLE[dbo].[订单信息表](

[车次号][char](20)NOTNULL,

[发车日期][char](20)NOTNULL,

[票价][char](20)NOTNULL,

[座位类型][char](20)NOTNULL,

[身份证号码][char](20)NOTNULL,

[出发地][char](20)NOTNULL,

[目的地][char](20)NOTNULL,

[用户姓名][char](20)NOTNULL,

[订票数量][char](20)NOTNULL,

CONSTRAINT[PK_orderinfo]PRIMARYKEYCLUSTERED

[身份证号码]ASC

)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]

)ON[PRIMARY]

GO

SETANSI_PADDINGOFF

GO

6.1.5操作信息表

USEticket;

GO

EXECSp_Help;

GO

执行结果

修改表名称

Sp_rename'车次信息表','车次'

删除表名称

DROPTABLE车次

添加表信息

USE[ticket]

GO

INSERTINTO[dbo].[车次信息表]

([车次号]

[出发地]

[目的地]

[票价]

[发车时间]

[剩余票数]

[座位类型])

VALUES

('T58',

'长春',

'北京',

'230元',

'3月15日',

'56',

'硬卧')

GO

修改数据

USEticket

GO

UPDATE车次信息表SET票价=180

GO

创建索引

USEticket

GO

CREATENONCLUSTERED

INDEXIX_车次信息表

ON车次号

GO

查看索引

sp_helpindex'车次信息表'

查询结果

删除索引

DROPINDEX车次信息表.IX_车次信息表

查询表中信息

SELECT*FROM订单信息表

查询结果

部分查询

SELECT车次号,发车日期,出发地FROM订单信息表

查询结果

求目的地是北京的详细信息,并将这些信息另存到数据表“北京”中

SELECT*

INTO北京

FROM车次信息表

WHERE目的地='北京'

查询订单信息表中的信息(注意跟车次信息表的连接)

SELECT订单信息表.用户姓名,订单信息表.发车日期,订单信息表.座位类型,订单信息表.出发地,订单信息表.目的地,订单信息表.订票数量

FROM订单信息表,车次信息表

WHERE订单信息表.车次号=车次信息表.车次号

GO

创建视图

CREATEVIEW[dbo].[View_1]

AS

SELECTdbo.订单信息表.车次号,dbo.订单信息表.发车日期,dbo.订单信息表.票价,dbo.订单信息表.座位类型,

dbo.订单信息表.出发地,dbo.订单信息表.目的地,dbo.订单信息表.用户姓名,dbo.订单信息表.订票数量,

dbo.车次信息表.出发地ASExpr1,dbo.车次信息表.目的地ASExpr2,dbo.车次信息表.票价ASExpr3,

dbo.车次信息表.发车时间,dbo.车次信息表.座位类型ASExpr4

FROMdbo.订单信息表INNERJOIN

dbo.车次信息表ONdbo.订单信息表.车次号=dbo.车次信息表.车次号

GO

创建触发器

CREATETRIGGERtigger

ON订单信息表

AFTERINSERT

AS

BEGIN

IF(SELECTcount(*)

FROM订单信息表JOIN车次信息表

ON订单信息表.车次号=车次信息表.车次号)=0

BEGIN

ROLLBACKTRAN

PRINT'插入无效!

'

END

END

GO

6.2程序流程图

本系统主界面为用户设计了三个功能操作以供选择:

查询,订票,退票。

另外,为方便用户,还将“退出系统”也单另列了出来,用户可以根据需要触发不同事件。

其处理流程如图所示。

 

6.2.1系统主处理流程

开始

登陆界面

 

登陆,确定访问权限

主界面

N

选择订票窗口

选择查询窗口

N

选择退票

Y

查询界面

N

退票界面

Y

车次查询

订单信息查询

 

订票

YY

退票

退票

订票

退出

结束

Y

6.2.2车次信息查询处理流程

返回主页

 

6.2.3订单信息查询处理流程

退票

 

6.2.4订票模块处理流程

输入订票信息

 

修改数据文件

 

6.2.5退票模块处理流程

输入退票信息

 

修改数据文件

 

当试运行数据库合格后,数据库开发设计的工作就基本完成了,接下来就是正式运行中的调试,应为该系统比较简单,数据量小,数据库中几乎不会发生什么大的变化,但是还是需要做好数据的备份,在sqlserver中我们可以利用备份数据库的功能对已经设计好的数据做备份,如果数据库受到破坏或系统故障,我们便可轻松的利用备份文件恢复数据库的数据。

当然也可以利用其他各种方法进行数据维护。

七、总结

7.1系统的功能

本系统主要是应用java和SQL来解决火车票网上订票的问题,达到方便,快捷的目的。

本系统主要设计了查询,订票,退票三个分系统。

7.2系统的特点

(1)系统实现依靠相对比较熟悉的java语言和SQLServer2000数据库系统,其基本操作实质还是对数据库进行添加、删除、查找等操作。

(2)本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。

这就要求系统能够提供良好的用户接口,易用的人机交互界面。

(3)本系统所用到的应用软件、硬件系统都易于获得.因此,开发成本较低。

而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。

7.3软件开发的特点

软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。

软件开发是

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

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1