火车站售票管理系统概要_第1页
火车站售票管理系统概要_第2页
火车站售票管理系统概要_第3页
火车站售票管理系统概要_第4页
火车站售票管理系统概要_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、学学 号号 课课 程程 设设 计计 报报 告告 课程名称课程名称 数据库原理与应用课程设计数据库原理与应用课程设计 题题 目目 火车站售票管理系统火车站售票管理系统 院院 系系 专专 业业 班班 级级 姓姓 名名 指导教师指导教师 2014年年1月月3日日 摘 要 近年来,随着我国国民经济的飞速发展和人民生活水平的提高,铁路旅客运输面 临着增加运能、提高卖票服务质量、提高竞争能力的迫切需要。基于网络自主的火车 票售票管理系统替代传统的人工售票,实现自动化售票和对票务的自动化管理,极大 的方便了乘客购票,也提高了铁路部门的管理效率和运营效率。 本论文围绕铁路运输售票的现状,引入火车站售票管理系统

2、,并对该系统的开发 及原理进行详细的介绍。要求: 具有方便、快速的售票功能, 包括车票的购买和退票功能,情况提供多种查询和统计功能,如车次的查询、时 刻表的查询等; 能准确地了解售票情况,提供多种查询和统计功能,如车次的查询、时刻表的 查询等; 能按情况所需实现对车次的查询、时刻表的查询等; 系统维护:如数据安全管理(含备份与恢复) 、操作员管理、权限设置等; 本次实习的题目是火车站售票管理系统,主要的目的是如何处理车站中票务的流 通。 根据系统所需功能,决定以 windows7 为开发平台,采用选择功能强 大的 Microsoft SQL Server2005/2008 为开发工具,利用软件

3、工程思想和方法,开发 该系统的所需要的功能。本系统由车辆、车次、乘客、车票、售票员等模块组成,对 车站中的各种信息进行分类管理,统筹规划。功能较为全面。 关键字: 火车票;售票系统;SQL Server2005;管理系统 目目 录录 1 1 绪绪论论 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 1 1.1 背景、现状 .1 1.2 研究内容及框架 .1 2 2 项项目目整整体体规规划划与与设设计计. . . . . . . . . . . . . . . . . . . .

4、 . . . . . . .3 3 2.1 招聘系统的总体需求分析 .3 2.2 整体结构分析,及功能分析 .3 2.3 数据库系统的具体设计 .4 3 3 数数据据库库设设计计与与分分析析. . . . . . . . . . . . . . . . . . . . . . . . . . . . .6 6 3.1 数据库的整体设计的 E-R 图 .6 3.2 数据库的整体概念模型设计 .6 3.3 数据库的整体物理模型设计 .7 3.4 数据库表的设计 .8 3.5 数据库的脚本 sql 语句 .10 4 4 数数据据库库完完整整性性约约束束. . . . . . . . . . . .

5、. . . . . . . . . . . . . . . . . .1 16 6 4.1 实体完整性约束说明 .16 4.2 参照完整性约束说明 .17 4.3 用户自定义完整性约束说明 .19 5 5 总总结结与与展展望望. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 21 1 参参考考文文献献 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 22 2 1 绪论 1.1 背景、现状 随着经

6、济社会的不断发展。人们的生活方式和习惯的多样化,出行已经成为人们 生活的一个重要组成部分。通过最近这几年的观察,每到春节的时候,因为过年,大 量的人口流动给我们的交通系统带来了不小挑战,其中火车这种交通工具因输送量大、 速度较快、价钱合理受到广大回家市民的青睐,因此车票票务市场也在快速发展。人 们希望车票销售手段也能相应地有所调整,并对如何能经济、方便和及时地购买到自 己所需要的车票表现出极大的关注。随着社会的不断进步,国内外铁路运输事业的飞 速发展,各国铁路运营部门对票务管理的要求也在不断的提高, 现如今乘车已是必不 可少的交通手段,各种类型的车辆到处可见,公共交通不仅在城市中随处可见,随着

7、 国家“村村通”政策的执行,农村、偏远山区等地均有了公路、汽车。因此,车站管 理已为交通运输中的重中之重。 火车成为了许多人选择出行的重要交通工具,而车站售票是预订车票、售票、退 票及车次查询、报表以及其他各种服务,车站售票组织庞大,服务项目多,信息量大, 传统的手工处理方式已经不能满足管理活动的需要。要想提高劳动生产,降低成本, 提高服务质量和管理水平,进而促进经济效益,必须借助计算机来进行现代化的信息。 从而催生了我关于火车站售票管理信息系统的探讨。 我们对本市附近的汽车站进行了初步的了解,发现其功能主要是集中在对车票的 购买、售出和退换上。对车票的管理工作量较大,采用新的操作方式,不仅能

8、满足乘 客对车辆的详细的查询功能,还能增加效率,减少乘客滞留弊端。本系统在设计中考 虑和充分分析了上诉的诸多问题,设计的程序内容简单出错率小,增强了实用性。 1.2 研究内容及框架 此项目主要研究的内容是用高级语言及 SQL SERVER 2008/2005 开发的火车站售 票管理,包括旅客查询,购买火车票、管理员对火车票的管理等。框架结构如图 1.1 图 1.1 功能结构图 2 项目整体规划与设计 2.1 招聘系统的总体需求分析 系统应具有售票、查询、管理和维护等功能,系统管理员可以进行对车次 的更改、票价的变动及调度功能,票价的修改可以通过修改运价来进行,车次 调度可通过对发车时刻表的修改

9、来进行,维护功能即可对表进行修改。 2.2 整体结构分析,及功能分析 整体结构是设计的综合设计,有各小的结构的汇总,整体结构图如图2.1 所示 图 2.1 整体结构图 系统是为实现某种功能,其整体功能有个各个能能模块组成下面是对各功能分析: 售票功能模块 (1)服务人员可以进行售票、订票、退票等操作 (2)购票:游客可以购买自己想买的票 (3)订票:游客想预订票时可以订票 (4)退票:游客想放弃此次行程,可以退票 查询功能模块 (1)购票者可以请求服务人员完成车次、时间或地点完成查询操作,并浏览查询 信息 (2)车次查询:游客可以查询想乘坐的车次信息 (3)时间查询:游客可以查询出发时间 (4

10、)地点查询:游客可以查询起始地点 管理统计模块 (1)系统管理员可以对运价、车次、终点站以及售票员的信息进行删除、添加、 修改。售票员和系统管理员均可浏览车票统计情况。 (2)运价修改:管理员对车票的价格的调整 (3)车次修改:管理员对车次调整 (4)地点修改:游客可以查询起始地点 2.3 数据库系统的具体设计 2.3.1 用户对该系统的功能需求 能根据不同查询条件(如车牌号、车次等)车辆表信息,包括车牌号、车次、开 车时间、车型、座位号、站名、里程等。 能根据不同查询条件(如 id、终点站等)买票表信息,包括 id、终点站、车牌号、 车票数量、车票日期等。 能根据不同查询条件(如票号、退款额

11、等)退票表信息,包括票号、退款额、手 续费、退票时间等。 能根据不同查询条件(如票号、车次等)车票表信息,包括票号、车次、站点、 票价、座位号等。 能根据不同查询条件(如车型、票价等)计费表信息,包括车型、票价等。 管理车辆基本信息,包括浏览、增加、修改、和删除车辆表信息。 管理买票基本信息,包括浏览、增加、修改、和删除买票表信息。 管理退票基本信息,包括浏览、增加、修改、和删除退票表信息。 管理车票基本信息,包括浏览、增加、修改、和删除车票表信息。 管理计费基本信息,包括浏览、增加、修改、和删除计费表信息。 2.3.2 数据需求 车辆表=车次+开车时间+到达时间+车型+里程 买票表=买票号+

12、起点站+终点站+车票数量+车票日期+乘客编号 退票表=票号+退款额+手续费+退票时间+乘客编号 车票表=票号+车次+起点站+终点站+票价+座位号+乘客编号 乘客表=乘客编号+身份证号+姓名 售票员表=工号+姓名+年龄+性别 3 数据库设计与分析 3.1 数据库的整体设计的 E-R 图 数据库的整体设计的E-R 图如图 3.1 所示 图 3.1 整体 E_R 图 3.2 数据库的整体概念模型设计 车辆(车次,开车时间,车型,里程,票价)主键为(车次) ; 买票(买票号,起始站,终点站,车票数量,车票日期,乘客编号)主键为(买票号) , 外键为(乘客编号) ; 退票(票号,退款额,手续费,退票时间

13、,乘客编号)主键为(票号)外键为(乘客 编号) ; 车票(票号,车次,起点站,终点站,票价,座位号,工号,乘客编号)主键为(票号) , 外键为(乘客编号) ,外键为(车次)外键为(工号) ; 乘客(乘客编号,身份证号,姓名)主键是(乘客编号) ; 售票员(工号,姓名,年龄,性别)主键是(工号) 。 3.3 数据库的整体物理模型设计 数据库的整体物理模型设计如图3.3 所示 表 3-1 车辆表 列名数据类型长度是否主键说明 车次varchar50是主键 开车时间datetime否 到达时间datetime否 到达时间大于开车 时间 车型varchar50否 里程varchar50否 表 3-2

14、买票表 列名数据类型长度是否主键说明 买票号varchar50是主键 起始站varchar50否 终点站varchar50否 车票数量varchar50否 车票日期datetime否 乘客编号varchar50否来自乘客表的外键 表 3-3 退票表 列名数据类型长度是否主键说明 票号varchar50是主键 退款额float50否 手续费float50否 退票日期datetime否 乘客编号varchar50否来自乘客表的外键 表 3-4 车票表 列名数据类型长度是否主键说明 票号varchar50是主键 车次varchar50否来自车辆表的外键 起点站varchar50否 终点站varcha

15、r50否 票价float50否 座位号varchar50否 工号varchar50否 来自售票员表的外 键 乘客编号varchar50否来自乘客表的外键 表 3-5 乘客表 列名数据类型长度是否主键说明 乘客编号varchar50是主键 身份证号char()18否必须为 18 位 姓名varchar50否 表 3-6 售票员表 列名数据类型长度是否主键说明 工号varchar50是主键 姓名varchar50否 年龄varchar50否 性别char2否取值为男或女 3.4 数据库表的设计 数据库是按照数据结构组织、存储和管理数据的仓库,数据管理不仅仅是 存储和管理数据,而是转化成所需要的各种

16、数据管理方式。结构 的好坏影响系统的效率及实现的效果、以及它的完整性和一致性。 车辆表如图 3.4 所示 图 3.4 车辆表 买票表如图 3.5 所示 图 3.5 买票表 退票表如图 3.6 所示 图 3.6 退票表 乘客表如图 3.7 所示 图 3.7 乘客表 车票表如图 3.7 所示 图 3.8 车票表 售票员表如图 3.9 图 3.9 售票员表 3.5 数据库的脚本 sql 语句 1.车辆表 sql 语句如下所示: CREATE TABLE dbo.车辆表( 车次 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 开车时间 datetime

17、NOT NULL, 到达时间 datetime NOT NULL, 车型 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 里程 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_车辆表 PRIMARY KEY CLUSTERED ( 车次 ASC ) ON PRIMARY ) ON PRIMARY GO SET ANSI_PADDING OFF GO USE zc GO ALTER TABLE dbo.车辆表 WITH CHECK ADD CONSTRAINT CK_车辆表

18、 CHECK (到达时间 开车时间) 2.买票表 sql 语句如下所示: CREATE TABLE dbo.买票表( 买票号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 起始站 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 终点站 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 车票数量 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 车票日期 datetime NOT NULL, 乘客编号 var

19、char(50) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_买票表 PRIMARY KEY CLUSTERED ( 买票号 ASC ) ON PRIMARY ) ON PRIMARY GO SET ANSI_PADDING OFF GO USE zc GO ALTER TABLE dbo.买票表 WITH CHECK ADD CONSTRAINT FK_买票表_乘 客表 FOREIGN KEY(乘客编号) REFERENCES dbo.乘客表 (乘客编号) 3.退票表 sql 语句如下所示: CREATE TABLE dbo.退票表(

20、票号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 退款额 float NOT NULL, 手续费 float NOT NULL, 退票日期 datetime NOT NULL, 乘客编号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_退票表 PRIMARY KEY CLUSTERED ( 票号 ASC ) ON PRIMARY ) ON PRIMARY GO SET ANSI_PADDING OFF GO USE zc GO ALTER TABLE dbo.退票表

21、WITH NOCHECK ADD CONSTRAINT FK_退票表_ 乘客表 FOREIGN KEY(乘客编号) REFERENCES dbo.乘客表 (乘客编号) GO ALTER TABLE dbo.退票表 CHECK CONSTRAINT FK_退票表_乘客表 4.车票表 sql 语句如下所示: CREATE TABLE dbo.车票表( 票号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 车次 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 起点站 varchar(50) COLLATE

22、 Chinese_PRC_CI_AS NOT NULL, 终点站 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 票价 float NOT NULL, 座位号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 工号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 乘客编号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_车票表 PRIMARY KEY CLUSTERED ( 票号

23、 ASC ) ON PRIMARY ) ON PRIMARY GO SET ANSI_PADDING OFF GO USE zc GO ALTER TABLE dbo.车票表 WITH NOCHECK ADD CONSTRAINT FK_车票表_ 车辆表 FOREIGN KEY(车次) REFERENCES dbo.车辆表 (车次) GO ALTER TABLE dbo.车票表 CHECK CONSTRAINT FK_车票表_车辆表 GO ALTER TABLE dbo.车票表 WITH NOCHECK ADD CONSTRAINT FK_车票表_ 乘客表 FOREIGN KEY(乘客编号)

24、REFERENCES dbo.乘客表 (乘客编号) GO ALTER TABLE dbo.车票表 CHECK CONSTRAINT FK_车票表_乘客表 GO ALTER TABLE dbo.车票表 WITH NOCHECK ADD CONSTRAINT FK_车票表_ 售票员表 FOREIGN KEY(工号) REFERENCES dbo.售票员表 (工号) GO ALTER TABLE dbo.车票表 CHECK CONSTRAINT FK_车票表_售票员表 5.乘客表 sql 语句如下所示: CREATE TABLE dbo.乘客表( 乘客编号 varchar(50) COLLATE C

25、hinese_PRC_CI_AS NOT NULL, 身份证号 char(18) COLLATE Chinese_PRC_CI_AS NOT NULL, 姓名 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_乘客表 PRIMARY KEY CLUSTERED ( 乘客编号 ASC ) ON PRIMARY ) ON PRIMARY GO SET ANSI_PADDING OFF GO USE zc GO ALTER TABLE dbo.乘客表 WITH CHECK ADD CONSTRAINT CK_乘客表 CHECK

26、 (身份证号 like 0-90-90-90-90-90-90-90-90-90-9 0-90-90-90-90-90-90-90-9,x) 6.售票员表 sql 语句如下所示: CREATE TABLE dbo.售票员表( 工号 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 姓名 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 年龄 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 性别 char(2) COLLATE Chinese_PRC_CI_

27、AS NOT NULL, CONSTRAINT PK_售票员表 PRIMARY KEY CLUSTERED ( 工号 ASC ) ON PRIMARY ) ON PRIMARY GO SET ANSI_PADDING OFF GO USE zc GO ALTER TABLE dbo.售票员表 WITH CHECK ADD CONSTRAINT CK_售票员表 CHECK (性别 = 男 or 性别 = 女) 4 数据库完整性约束 4.1 实体完整性约束说明 1.车辆表中“车次”为主键如图所示: 图 4.1 车辆表 2.买票表中“买票号”为主键如图所示: 图 4.2 买票表 3.退票表中“票号”

28、为主键如图所示: 图 4.3 退票表 4.乘客表中“乘客编号”为主键如图所示: 图 4.4 乘客表 5.车票表中“票号”为主键如图所示: 图 4.6 车票表 6.售票员表中“工号”为主键如图所示: 图 4.7 售票员表 4.2 参照完整性约束说明 1.买票表中的“乘客编号”来自乘客表,如图所示: 图 4.8 买票表中的外键 2.退票表中的“乘客编号”来自乘客表,如图所示: 图 4.9 退票表中的外键 3.车票表中的“车次”来自车票表,如图所示: 图 4.10 车票表中的外键 4.车票表中的“乘客编号”来自车票表,如图所示: 图 4.11 车票表中的外键 5.车票表中的“工号”来自车票表,如图所

29、示: 图 4.12 车票表中的外键 4.3 用户自定义完整性约束说明 1.售票员表中的 check 的约束: 图 4.13 售票员表中的 check 约束 2.车辆表中的 check 的约束: 图 4.14 车辆表中的 check 约束 3.乘客表中的 check 的约束: 图 4.15 乘客表中的 check 约束 4.乘客表中的 check 的约束: 图 4.16 乘客表中的 check 约束 5 总结与展望 在数据库课程设计过程中,经过认真的回顾数据库的相关知识,并很好的巩固了 课程设计的基本步骤,掌握了在数据库课程设计过程中所要遵循的基本原则和环节; 由于时间关系,这次课程设计的系统没

30、有做的很完善,但是在这次课程设计中, 知道了需求分析的几个方面,物理结构等概念,这是在上课中没有体会到的其含义的。 还有外键、表约束的设置,在这次课程设计中都遇到了。 虽然这次课程设计时间较短,但还是有很大收获的。 老师将题目发下,对应学号选题,开始我那个题目意思我无法理解,无处下笔, 后来询问了一下老师,老师建议换个题目,最后只有换题目了。这个火车站的售票管 理系统还是比较好的,通过网上查资料,知道火车站售票管理系统中有哪些数据,这 样便于构建整体框架。第一天就完成了,需求分析。构想了大概框架。然后设计大概 框架,建立 E-R 图,找到各个实体属性,当然还有些没想到的,有些不完善。最后设 计

31、数据库,建立表结构、表约束、表数据,写报告老师检查报告。 通过这些天,我知道数据的项目有哪些内容,也在这样一个课程设计中,边学习, 边设计中巩固了以往的知识,也学习了新的知识。 由于时间和本人能力关系,这次的课程设计,不免有些不足。有了这次经历,对 于以后的项目就有一些了解了。 参考文献 1 陈圣国. 2005.信息系统分析设计. 西安:西安电子科技大学出版社。 2 高晓黎,韩晓霞. 2010. SQL SERVER2008 案例教程,北京:清华大学出版社。 3 胡国胜,易著梁. 数据库技术与应用: SQL SERVER2008. 北京:机械工业出版社。 4 刘腾红,孙细明. 2006. 信息系统分析与设计,北京:科学出版社。 5 罗耀军. 2011. 数据库应用技术与项目教程(基于 SQL SERVER2008). 北京:电 子工业出版社

温馨提示

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

评论

0/150

提交评论