第一篇:铁路售票系统
铁路售票系统应用软件需求分析报告
前言:
(1)需求分析报告的编写目的
本需求分析报告的目的是规范化本软件的编写,旨在于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,同时提出了本铁路售票系统的软件开发过程,便于程序员与客户之间的交流、协作,并作为工作成果的原始依据,同时也表明了本软件的共性,以期能够获得更大范围的应用。(2)产品背景明细 软件名称:铁路售票系统 软件开发者:(3)缩写及缩略语
铁路售票应用系统软件:基本元素为构成铁路售票及相关行为所必须的各种部分。
需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。
需求分析:包括提炼,分析和仔细审查已收集到的需求,以确保所有的风险承担者都明其含义并找出其中的错误,遗憾或其它不足的地方。
模块的独立性:是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他的模块的接口是简单的。本工程描述:
(1)软件开发的目标:
完善目前铁路售票系统,使之能跟上时代的发展。同时通过实践来提高自己的动手能力。(2)应用范围:
理论上能够实现于铁路部门的售票系统,其目的在于在原有的系统基础使得铁路售票实名化,以期实现完善日常生活中铁路售票的各种缺陷。(3)硬件配置要求:
硬件外部设备需奔腾133以上的pc机,内存需16兆以上。(4)子集说明:
软件分别有五个模块组成,每个模块各有不同的功能。但都能完成查询和存储功能,各模块的数据都存放在数据库中。数据的调用和连接都有程序来完成。(5)软件功能描述:
外部功能:实现可视化窗口,查找及存储 内部功能:同步,过滤,定位,识别 软件功能描述图: 赔偿信息 车次信息 列车明细 日志维护 个人信息 主界面 同步 过滤 数据库 定位
(6)软件操作人员的要求:
软件要求操作人员具有初步的相关知识(7)在其他方面的要求:
由于本系统为即时软件,对数据的同步要求较高,建议配置网络时使用可靠性较高的相关网络硬件设施。软件结构化描述(1)数据流图: 乘客 数据库更新 列车明细 个人信息 日志 售票员
(2)数据结构的描述:
车票=日期+价格+出发站+目的站+售票站+座号+车次+性质+编号 日期=年+月+日+时+分 价格=“1”..“9999” 出发站=1{汉字}6 目的站=1{汉字}6 售票站=1{汉字}6 座号=车厢号+座位号 车次=“1”..“9999”
编号=“000000001”..“999999999”
性质=“1”..“6” 注:“1”表示空调硬座特快,“2”表示空调软座普快等 设计要求:
(1)所调用的数据库的显示: 输入内容:指定的库文件名。加工内容:调用指定的数据库。输出内容:所指定的数据库的库结构。(2)关于编辑框的说明: 输入内容:编辑框名称。加工内容:生成编辑框。输出内容:显示所生成的编辑框(3)指定记录说明:
输入内容:指定的项名及库文件名。加工内容:将指定的数据库里指定的记录置为当前记录。(4)初始化说明: 输入内容:所要求的尺寸
要求处理内容:确定指定对象在窗体中的开始尺寸的大小 输出内容:确定开始尺寸的四个参数。(5)最大化说明: 输入内容:指定的参数值。
加工内容:确定指定对象在窗体中的最大尺寸。输出内容:确定指定对象最大尺寸的四个参数。(6)最小化说明 原理同上
(7)查词编辑框说明(编辑框控制)
功能:主要是定义的一个编辑框,供用户输入一个词名,为程序生成查找条件做准备。输入内容:在查词编辑框中输入要查找的词名。加工内容:用输入的词名以供程序生成查找条。输出内容:地址、长度。
(8)内容编辑框说明(编辑框控制)
功能:主要是定义的一个编辑框,将程序查找到的用户所输入词的相关内容显示出来,为用户提供帮助信息。
输入内容:数据库中查找到的记录的项的内容的地址、长度。加工内容:置控制标题或值。
输出内容:显示用户所输入词的相关内容(如该词的格式、用法……)。(9)定义过滤说明
作用:定义用户输入的词名与内容库中的词名字段中的词名进行串比较,即定义词名字段为过滤字段。输入内容:用户输入的词名。
加工内容:把代码写入过滤条件指针之中。输出内容:查找条件。(10)执行过滤说明
作用:将定义的过滤作为内容库的过滤条件。输入内容:查找条件。
加工内容:与查找编辑框中的内容比较。输出内容:库过滤显。(11)同步说明: I:令牌持有标记
P:与数据库同步更新数据 O:更新数据库 环境要求:
(1)数据录入精度需求
在进行向数据库文件提取数据时,要求数据记录定位准确,在往数据库文件数组中添加数时,要求输入数准确。
(2)软件自身时间特性需求
程序响应时间:在人的感觉和视觉事件范围内;
信息交换时间:要求在程序调用前调用后都与数据库保持同步更新,网络信息狡猾施加应该小于程序调用的时间
(3)数据管理能力需求
要求数据库具有很好的更新能力,由于本产品是实验性软件,故对磁盘和内存容量没有很高的要求,但是数据库应该能够对并发事件,脏数据具有较强的识别处理能力。接口要求:
(1)硬件接口:无特别要求
(2)网络硬件接口要求:现实中要求具有高速以太网组网一实现联网销售,但是在理论实验验证软件本身的目的来看,无需网络通讯接口。(3)软件接口要求:无 软件属性(1)可用性 本软件也可以通过单步跟踪的操作进行检查处理。
(2)安全性
由于软件运行数据放在数据库中,所以参数不容易被错改、破坏,万一参数受到破坏也不会影响源程序。(3)可维护性
本软件利用数据库进行编程,系统结构由程序基本确定,大量的参数及文本内容全部放于数据库中。修改、更新数据只要在数据库进行修改添加,而不需要对系统结构进行修改,这样系统维护性、升级都十分方便。(4)兼容性
由于尚未测试,故无法对兼容性进行评析。支持信息(1)软件支持:
本软件开发是使用Delphi编写。
(2)设备支持:
推荐配置:WindowsXP,256内存,VGA显示器
第二篇:铁路售票系统数据分析
铁路售票系统数据分析
一、背景
目前火车站售票的状况是仅靠手工操作,以现有的工作人员很难应付车票订购高峰时刻的大量数据处理问题。同时还会出现由此带来的大量记录存放和管理所带来的问题。本次设计拟开发一个火车票售票系统,可以降低工作人员的工作量,提高工作人员的工作效率,同时方便顾客售票。
二、现实状况
火车站市场的管理和规范问题,是困扰我们多年的一个老问题,也是政府管理中的一个难点,售票是客运业务中的一个最基本的业务,表面上看,它只是火车站业务的一个简单的部分,但是它涉及到管理与客户服务等多方面,因此,过去传统的售票方式已经不能满足现代客运业务流量剧增的客观要求,这就要求一种全新的售票方式——网上售票,来缓解售票高峰时期的客运压力,并为用户提供方便快捷的售票服务。
三、售票系统工作流程
3-1 售票系统工作流程
四、数据提取整理及流程描述
1)顾客在窗口排队买票,买票时提供所需车票的日期、到站、车票类型(硬座、软座、硬卧、软卧)票数、车次(可选)
2)售票人员通过本系统客户端,按顾客的所要求查询,如果有足够的车票则按系统提示收费并出票(票面包括车次,始发站、到站、座位/卧铺号、价格、发车日期及时间);如果没有足够的车票与顾客协商选择其它车次或车票类型;如果都没有车票或顾客放弃,则结束本次售票业务。
3)顾客可以通过大屏幕来查看3天内各车次的车票剩余情况。
4)铁路调度提前10天将发车信息输入系统。发车信息有两种,一种是计划内,即列车时刻表上有的;另一种是计划外的,如春运期间加开的临时列车。对于计划内的只需指派列车长和工作人员组即可。而对于计划外的则需要包括车次、发车日期时间、各种车厢的个数,列车长和工作人员组。5)车票价格按单位里程计算,按列车类型和车票类型高低不同,详见下表:(计算票价时,两站间距离不足10公里部分按10公里计算)
6)
各种车厢坐位数如下:
硬座车厢:110座 软座车厢:110座
硬卧车厢:20号,每号分上中下铺 软卧车厢:20号,每号分上下铺
五、可行性研究和需求分析
1、可行性分析
1.1、经济可行性分析
开发该系统所需的相关资料可以通过已存在的网上售票系统进行调查采集,所需的其他应用软件、硬件系统也易于获得.因此,开发成本较低。而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。所以,从经济的角度来看,该系统可行。1.2、技术可行性分析 开发工具:JSP 数据库环境:SQL Server 2000 系统环境:Microsoft Windows 2000或以上版本。
系统实现依靠相对熟悉的JSP语言和SQL Server2000数据库系统,其基本操作实质还是对数据库进行添加、删除、查找等操作,暂不存在技术问题。1.3、操作可行性分析
系统采用菜单式,实现用户与数据库的交互,界面简洁友好,操作方便。用户只需对售票流程和业务调查了解即可,不需掌握数据库等相关知识。
2、需求分析
需求分析是软件设计的一个重要的环节。本阶段对售票系统的应用情况作全面调查,以确定系统目标,并对系统所需要的基础数据以及数据处理要求进行分析,从而确定用户的需求。用户对系统的需求我们从以下几方面进行分析。2.1、功能需求分析
需求分析是软件设计的一个重要的环节。本阶段对售票系统的应用情况作全面调查,以确定系统目标,并对系统所需要的基础数据以及数据处理要求进行分析,从而确定用户的需求。用户对系统的需求我们从以下几方面进行分析。3.2.1功能需求
本网上售票系统应该具备如下功能: 1.查询
分为对车次信息的查询和客户对已订车票信息的查询。要求:
1)对车次的查询,可以按照发车车次进行查询; 2)车次信息包括:车号、出发地、目的地、发车日期、开出时刻、票价。3)座位类型设定。
4)车次信息只允许用户查询,不能修改。3.售票 通过查询系统,客户根据自己的需求找到满意的车次,再输入个人信息后直接通过网上售票确定已预订选中的车票。要求:
售票记录应包括:会员名、车号、发车日期、订购日期、订购票数、总价。4.退票
可退票,通过查询系统,客户可以根据自己的名字找到自己的售票信息,通过退票模块退去已购车票。2.2、数据需求分析
信息需求,即在系统中需要处理哪些数据。根据对火车票售票系统的分析,本系统的信息需求如表2-1所示。
2-1 信息输入输出
2.3、性能需求分析 2.3.1、准确性和及时性
系统处理的准确性和及时性是系统的必要性能。系统应能及时而且准确的根据用户权限及所输入的信息做出响应。由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。2.3.2、易用性
本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。2.3.3、安全性
网上售票系统中涉及到的数据是客运公司相当重要的信息,系统要保证用户的权限,对于车次等信息用户只享有查询服务,不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全管理、以及系统意外崩溃时数据的恢复等工作。同时系统还要保证对数据库进行及时更新,保证数据一致性。
3、数据流图
3-1 数据流图
4、数据字典
4-1 车次信息数据字典
4-2 售票信息数据字典
3、用户信息数据字典
5、E-R图
用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。
针对火车票售票系统,通过对网上售票工作的过程、内容以及数据流程分析,设计如下所示的数据项和数据结构:
1.车次信息包括:车号、出发地、目的地、发车日期、开出时刻、剩余座位数、票价。
3.售票记录包括:订单号、身份证号、车号、订购日期、订购票数、总价。4.用户信息包括:用户名、身份证号、性别、电话。E-R图如图5-1所示。
5-1 总E-R 图
6、数据库逻辑结构分析
火车票售票系统数据库中各个表格的设计结果如下表所示。每个表格表示在数据库中的一个表。
6-1 车次信息表
6-2 订单表
6-3 用户表
第三篇:铁路自动售票系统传输方案
上海群安电子成都办028-85268630
目录
一、概述
2二、需求分析
2三、设计依据和原则
21、设计依据
22、设计原则
3四、系统设计
3五、产品技术参数
5六、售后服务7
一、概述
铁路客票发售和预订系统的实施,取消了铁路沿用几十年的硬板票,实现了铁 路售票业务的计算机化。客票系统经过近6年的发展,取得了显著的社会效益和经济效益。但是,随着 I T 产业的迅猛发展,电子商务的不断普及,以及服务业的不断发展,旅客已经不再满足于以往的窗口购票的单一方式 而是期待着更加便利、更加快捷的售票服务。自动售票系统正是针对这一传统售票方式的有效 补充,利用客票系统的票务资源,结合银行的业务网络和各种电子货币,形成计算机无人售票网络,实现客票管理和发售工作无人化管理,使售票网络延伸至 公共场所、大型商场、居民小区等城市的各个角落,从而更加方便旅客 的购票需求,提高铁路客运经营水平和服务质量。
二、需求分析
由于铁路自动售票系统传输信号到自动售票机端距离较远,而超过100米网络信号将衰减,影响自动售票机的效率,所以增加网络信号延长器延长网络信号的传输距离。
三、设计依据和原则
1、设计依据
系统配置是根据业主需求及国家或行业批准发布的相关产品/系统标准而设计的。
Ø GBJ115-87《工业电视系统工程设计规范》;
Ø GB50918-94《民用闭路电视监视系统工程技术规范》;Ø GA/T75-94《安全防范工程程序与要求》;
Ø GA/T70-94《安全防范工程费用概预算编制办法》;Ø GA/T95-94《安全防范工程开工程序与要求》;Ø 《电器装置工程施工和验收规范》;Ø TB《铁路通信工程设计规范》;Ø TB《铁路通信工程施工验收标准》;Ø 现场勘察报告;
Ø 建设单位设计施工要求;
2、设计原则
系统重点为加强铁路科学管理功能,提高铁路生产运营的安全性和可靠性。因此,设备选择必须具备安全可靠、先进、操作简便,免维护性强等特性,同时也必须兼顾节约投资,以性价比最好的设备来构成先进、完备的系统,以满足铁路安全生产和综合管理的要求。鉴于该铁路系统的重要性及安全性,我们力求系统设计的先进性、可靠性、实用性和可扩展性。同时体现以下原则:Ø 系统设计方案周密,严谨,安全可靠.Ø 设备选型应具有数字化和网络化.Ø 系统兼容性强,扩充其它系统容易。Ø 人机对话(界面)操作方便,实用性强.Ø 在满足各项功能的前提条件下,尽可能降低费用
四、系统设计
客票主机系统和自动售票系统服务主机之间采用的是铁路专用网络传输系统传输,在服务主机和自动售票机之间采用的网络信号传输,串联网络延长器增加网络信号的传输距离。
系统总体结构
五、产品性能指标
网络数字信号延长器(SJ-L-DSL)
使用网络信号延长器的优点
采用VDSL2标准。可将网络信号通过双绞线、电话线、同轴线等电缆进行长距离传输,最远距离可达6000米,最大带宽可以达到148Mbps。适合矿井中专用电缆进行铺设传输,保证了矿井中的安全。
1、安装简单,使用方便。
2、实时性忧,通信速率自适应,无需调节。
3、性价比高,一次使用长期受益。
六、销售服务
1.售前的技术服务
本公司设有专门面向用户的工程、维修服务中心,技术中心的防雷工程师在用户的售前服务过程中负责向用户提供免费的技术服务。其中包括: 用户的技术咨询; 详细的现场勘察;
协助用户确定相应的保护设计的种类、数量; 电源容量的确定;
用户拟须防护现场的建议性设计方案; 确定合理安装场地;
相关及现场的技术培训。2.售中的技术服务
在前期的建议性设计方案得到用户首肯及前期的商务接洽落实后,开始在相应服务合同原则下的用户服务我们将向用户提供完整的设计定型方案及施工方案,基于我们的产品的应用特性,在产品的交付过程中,我们还辅以严格的雷击过压试验检测程序,以期确保向用户提供高可靠性和高质量的产品,达到确保用户的现场设备运行安全。
在设备的现场安装、调试完成后,我们将向用户提供相应的项目竣工报告,同时接受用户及相关方面检测验收,同时我们还将向用户进行现场运行维护及应急情况的基本培训。3.售后的技术服务
1)产品保修期内免费维护
凡适配我们产品的用户,在满足使用环境和使用条件及按规定使用操作规范运行情况下发生故障或器件损坏等意外情况时,用户将享受对损坏的器件和故障进行免费的更换和检测调维护服务,免费运维期限y壹年。
2)服务形式
为了确保机房雷电防护系统对所保护系统的业务能正常运行,我们配备专业工程师为您提供24小时全方位服务。
3)产品保修期后的维护服务
在免费运维期结束,我们仍承担用户的维修责任,维修过程我们只收取元器件的更换费用和基本的服务费用。
4)运维服务的响应时间
在我们接到用户的运维服务通知后,将以最快的速度进行响应,根据用户的位置、距离及用户的运维要求制定维修方案,在无自然及人为等不可抗力因素影响下,本埠的现场响应时限在接到通知内三小时。
5)本公司承诺对所售设备提供终身的维修服务。
第四篇:数据分析报告 铁路售票系统
毕业实习数据分析报告
1.调查实际环境背景
信息时代已经来临,信息处理的利器——计算机应用于火车站售票的日常管理为火车站售票的现代化带来了从未有过的动力和机遇,为火车站票务管理领域的飞速发展提供了无限潜力。采用计算机管理信息系统已成为火车站票务管理科学化和现代化的重要标志,给火车站票务带来了明显的经济效益和社会效益。计算机已经成为人们生活不可或缺的一部分。
随着Internet的迅速发展和用户数量的急剧增加,互联网对于企业和事业单位的运营和发展日益重要,网上交易也逐渐被人们认可,并成为未来交易的发展方向。铁路售票系统也不例外。
铁路售票系统是铁路旅游服务信息系统的一个重要组成部分,为旅客提供优质便捷的服务。为了提高铁路客运的售票效率,丰富铁路客运的营销手段,火车站售票总站及其下属代售点可以通过公用的互联网资源,实现网上的售票,查询及管理工作。
在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的铁路网上售票系统,为企业的决策层提供准确、精细、迅速的车票销售信息。
2.描述现实状况及工作流程 2.1现实状况
随着旅游业的逐渐的成熟发达,铁路客运量大幅度的提高,各大省市的列车都显著的增加,这些都对列车票务管理系统提出了更高的要求,所以要不断的完善更新列车票务管理系统,提高列车售票系统的工作效率。随着科学的不断进步,计算机应用已经遍布整个社会的每个角落。目前社会正处于健保发展方兴未艾的时代,各火车站莫不兢兢业业地改善本身的体制或管理方式,以适应健保越来越严格的规范。列车在我国的人员流动、物资运输中占据着举足轻重的地位。全国有大量的人员通过搭乘火车到达目的地。而与火车的特殊性及可能经过多个城市,每个城市的车站可以出售此火车的车票。而且同一车站可能有多辆车经过。许多希望以最快的方式选择自己想来乘坐的那一趟列车。所以以人工的方式和单纯的列车票务管理系统都不可能实现这种功能的。一种可行的方案是通过网上订购,可以达到高效、便捷的购票。铁路网上售票系统的实施,将会在一定程度上促进铁路客运生产力和生产关系的变革,增强市场竞争能力,提高铁路部门的工作效率,提升管理水平,减少劳动强度,方便广大旅客购票,有一定的社会和经济效益。
2.2工作流程
系统要处理的对象主要包括票存系统基本信息、票务人员基本信息、客户基本信息、订票单基本信息、退票单基本信息、车票基本信息、车票销售记录基本信息。①查询:可以通过起点站与终点站在进行查询,也可根据具体的车次输入进行查询,同时每次查询都会显示车次号,点击即可显示该趟列车所进过站点的详细信息,其中包括所到达每个站的到达时间与出发时间。
②客户注册、登录:由于要进行网上订购车票,用户需注册,填写有关信息,由由票务人员负责送车票到客户手中。
③订票业务:本系统为网上订票,用户经过查询车次信息、票务信息,找到自己所需的车票通过所关联的账户进行订购。
④退票业务:根据客户提供的情况(车次、时间)为客户办理退票手续,退票时按票价的80%退给客户金额,若所退票额能满足他的要求,则为他办理退票手续,同时在数据库中进行更新。(车票价格低于2元不予退票)
⑤更新功能:该系统随时跟据车辆的变化情况进行更新,增加车辆时可以在系统中插入该车的详细信息,同时也能根据需要修改某趟车经过的站点与发车时间,当某趟车停止、开行时可以删除该趟车的信息。同时包括对列车信息、站点信息、订票记录等的更新功能。
⑥车票配送:客户在订购了车票之后,管理人员通过后台管理订票记录,然后根据客户的要求由票务人员及时为其配送车票。(1)客户注册及登录流程图:
2.1 注册登录流程图
(2)订票业务流程图:
2.2 订票业务流程图(3)退票业务流程图:
2.3 退票业务流程图
铁路网上售票系统数据流程图如下图2.4—图2.7:(1)顶层数据流程图:
2.4 顶层数据流程图(2)第一层数据流程图:
2.5 第一层数据流程图
(3)第二层数据流程图—订票:
2.6 第二层数据流程图-----订票
(4)第二层数据流程图—退票:
2.7 第二层数据流程图-----退票
3.数据分析
参照业务流程图和数据流程图,分别画出分E-R图,如图3.1至3.4所示。
(1)根据图2.2抽象出的进货分E-R图:
3.1 车票配送E-R图
(2)根据图2.6抽象出的销售分E-R图:
3.2 客户订票E-R图
(3)根据图1.7抽象出的存储分E-R图:
3.3 客户退票E-R图(4)根据图2.4抽象出的存储分E-R图:
3.4售票记录E-R图
各E-R图中的实体属性如下图3.5至图3.10:(1)车票及其属性:
3.5 车票及其属性
(2)客户及其属性:
3.6 客户及其属性
(3)票务人员及其属性:
3.7 票务人员及其属性
(4)票存系统及其属性:
3.8 票存系统及其属性
(5)订票单及其属性:
3.9 订票单及其属性
(6)退票单及其属性:
3.10 退票单及其属性 根据各分E-R图合并整体E-R图,具体方法是将4个E-R图中相同的实体,进行合并,消除属性冲突、命名冲突、结构冲突之后得到总E-R图如图3.11所示。
3.11 全局E-R图
5.设计数据库
5.1数据库物理设计阶段目标和任务
数据库的物理设计是为逻辑数据模型选取一个最合适应用需求的物理结构的过程,在这个阶段中需要完成的任务是:
(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。
5.2数据字典
(1)数据项如表5.1所示。
数据项编号 I1 I2 I3 I4 I5 I6 数据项名数据项含义
称 Tno Tprice 车票编号 车票价格
车票的编号 车票的售价 某次列车的编号 包括硬座、软卧、无座Tstype Tpno Tsta 座位类型
等
座位编号 出发站
出发
车票上所示乘客要到达车厢号和座位编号 车票上所示乘客从何处
char char char char int char
简述
类型
宽度(位)60 8 8 8 20
取值范围
Trainno 车次
I7 Tdes 目的站 的地方
char 20 YYYY:MI8 Tstatime 发车时间 列车从该站出发的时间 datetime M:DD hh:mm YYYY:MI9 Tdestime 到站时间 列车终到目的站的时间 datetime M:DD hh:mm I10 I11 I12 I13 I14 I15 I16 I17 Bno Bdate Btime Bqua Bpou Sno Sdate Stime 订票单号 订票日期 订票时间 订票数量 订票手续费
订购火车票单据的编号 订购火车票的日期 订购火车票的时间 一次性订购的数量 订购火车票所支付的额
char datetime datetime int int
YYYY:MM:DD
hh:mm 1-50 5 YYYY:M
外费用
售票单号 开售单日期
日期
开售单时间 开出销售火车票单据的datetime
销售火车票单据的编号 开出销售火车票单据的datetime char
M:DD hh:mm 数据项编号 数据项名数据项含义
称
时间
简述
类型
宽度(位)
取值范围
I18 I19 I20 I21 Sgname Sgno 领票人姓名 领取火车票人的姓名 领票人身份证号
领取火车票人的身份证
char char 20
≤
号码
支付票款的日期 支付火车票金额及手续
date int
费 Sddate Sdamo 交款日期 交款金额 即时退票单
100000
char
YYYY:MI22 Pdno 号 即时退票日
即时退票单据的编号
I23 Pddate 期 即时退票时
即时退票的日期 datetime
M:DD I24 Pdtime 间 即时退票数
即时退票的时间 datetime hh:mm I25 Pdqua 量 即时退票金
一次性即时退票的数量 即时退票后应收取的金
int 1-50 ≤I26 Pdamo 额 即时退票手
额
即时退票所支付的额外
int
100000 I27 Pdpou 续费 退票申请单
费用
客户向服务器申请退票
int 2 I28 Adno 号 退票申请日的单据的编号
char 14 YYYY:MI29 Addate 期 退票申请时
申请退票的日期 datetime
M:DD I30 I31 I32 Adtime 间
Adqua Dno 退票数量 退票单号
申请退票的时间 一次性退票的数量 退票单的编号
datetime int char
hh:mm 1-50 数据项编号 I33 I34 I35 数据项名数据项含义
称 Ddate Dtime Damo 开退单日期 退票的日期 开退单时间 退票的时间 退票金额
退票后应收取的金额 退票所应支付的额外费
datetime datetime int
简述
类型
宽度(位)
取值范围 YYYY:MM:DD
hh:mm ≤100000 I36 I37 I38 Dpou Cname Cno 退票手续费
用
客户名 客户身份证
客户的身份证号码
号 客户银行卡
客户的姓名
int char char
I39 I40 I41 I42 Ccano 号
Cphone Cadd Cid 客户电话 客户地址 登录ID
客户的银行卡号码 客户的电话号码 客户的住址
客户办理网上业务的名
char char char char 12 30 14
称
客户办理网上业务的名I43 Cpwd 登录密码
称对应的密码
票务人员编I44 Tsno 号 票务人员姓I45 Tsname 名 票务人员工I46 Tsadd 作地点 票存分系统I47 I48 Msno 编号
Msadd 票存分系统
票存系统分系统的服务
char
票存系统分系统的编号
char
票务人员所在的工作地
char
各车站票务人员的姓名
char
各车站票务人员的编号
char
char
数据项编号 数据项名数据项含义
称
地址
所在地
某次售、退票业务记录
简述
类型
宽度(位)
取值范围
YYYY:M
datetime
M:DD
datetime
hh:mm I49 Rdate 记录日期
到系统的日期 某次售、退票业务记录I50 Rtime 记录时间
到系统的时间 某次售、退票业务账目I51 Rsty 出入账类型 的出入类型
某次售、退票应记录的char 6 ≤I52 Ramo 出入帐金额
交易金额 表5.1 数据项
int
100000(2)数据结构如表5.2所示。
DS01 客户信息
I38 客户身份证号
I37 客户姓名 I39 客户银行卡号 I40 客户电话 I41 客户地址 I42 登录ID I43 登录密码
DS02 车票信息
I1 车票编号
I3 车次 I4 座位类型 I5 座位编号 I6 出发站 I7 目的站
I2 车票价格
DS03 票务人员信息
I44 票务人员编号 I45 票务人员姓名 I46 票务人员工作地点
I8 发车时间 I9 到站时间
DS04 订票单的数据结构
I10 订票单号
I37 客户姓名 I38 客户身份证号 I39 客户银行卡号 I40 客户电话 I41 客户地址 I3 车次 I4 座位类型 I6 出发站 I7 目的站
I2 车票价格 I13 订票数量 I14 订票手续费
I8 发车时间 I9 到站时间 I11 订票日期 I12 订票时间
DS05 售票单的数据结构
I15 售票单号
I22 即时退票单号
I3 车次 I37 客户姓名 I38 客户电话 I41 客户地址 I18 领票人姓名 I19 领票人身份证号 I44 票务人员编号 I45 票务人员姓名 I13 订票数量 I21 交款金额
I16 开售单日期 I17 开售单时间 I20 交款日期
I23 即时退票日期 I24 即时退票时间
DS06 即时退票的数据结构
I2 车票价格 I25 即时退票数量 I26 即时退票金额 I27 即时退票手续费 I37 客户姓名 I38 客户身份证号 I1 车票编号 I44 票务人员编号 I45 票务人员姓名
DS07 退票申请单的数据结构
I28 退票申请单号
I37 客户姓名 I38 客户身份证号 I39 客户银行卡号 I1 车票编号
I2 车票价格 I31 退票数量
I29 退票申请日期 I30 退票申请时间
DS08 退票单的数据结构
I32 退票单号
I37 客户姓名 I38 客户身份证号 I39 客户银行卡号 I6 出发站 I7 目的站 I44 票务人员编号 I45 票务人员姓名
I2 车票价格 I31 退票数量 I35 退票金额 I36 退票手续费
I33 开退单日期 I34 开退单时间
表5.2 数据结构
(3)数据流如表5.3所示。
数据流简述
名称
客户网上欲订票单 订购火车票的单据 服务器开出售票单 销售火车票的单据 业务人员开即时退出的即时退票单
票的单据 客户向服务退票申器申请退票请单 的单据 服务器不同未通过意客户退票单
申请的单据
拒绝退票单 服务器拒绝
服务器
客户退票的客户
I29+I30
天
天
I37+I38+I1+I2+I31+
20份/
200份/
块 审理模
服务器
I29+I30
天
天
I37+I38+I1+I2+I31+
20份/
200份/
客户
块
I31+I29+I30
天
天
审理模
I37+I38+I39+I1+I2+
200份/
2000份/
员
I24
票务人
服务器 I2+I25+I26+I27+I23+
天
天
服务器
客户
客户 来源
去向
I37+I38+I39+I40+I41+
1000份
服务器 I3+I4+I6+I7+I2+I13+
/天
I14+I8+I9+I11+I12 I3+I37+I38+I39+I18+
1000份
I19+I13+I21+I16+I17+
/天
I20+I44+I45 I37+I38+I1+I44+I45+
10份/
100份//天 10000份/天 10000份
数据流
数据流
数据流组成
量
量
数据流
高峰流数据流简述
名称
单据 服务器同意
数据流来源
数据流
数据流组成
去向
数据流量
高峰流量
审理模通过单 客户退票申
块
请的单据 服务器开出退票单 的客户退票的单据
服务器
票存模
I1+I2+I31+I29+I30
块
I37+I38+I39+I6+I7+I
2180份/天
1800份/天
180份/
客户
+I31+I35+I36+I8+I33+
天
I34+I44+I45 表5.3数据流
1800份/天
(4)处理逻辑如表5.4所示。
处理逻辑处理
处理逻辑简述
输入的数据流
处理
输出的数据流
频率
编号 名称
根据客户订单信服务器
F1 订票单,来向客户P1.1 售票
销售火的订票单据
车票
录
服务器
F3 即时退票为客户即时P1.2 退票
时退票
退票单据
手续 服务器退票P2.1 审理 户的退票申请
户发出的退票申请单据
审理,确定是否同意
申请录入系统;F8 退票
天
单,向客户开出的退票审理客
F4 退票申请单,来源于客
根据客户开出的退票申请单进行
F5 未通过单,拒绝客户
200
申请;F7 通过单,同意
次/
更改 办理即
户发出的即时
统进行登记记录
有详细记录
天
单,来源于客
信息,将票存系
账,每次即时退票都要
次/
根据即时退票单
S1 票存系统、S2 流水
票并进行登记记
次售票都要有详细记录
源于客户发出
售票单销售火车
存系统、S2 流水账,每天
息,向客户开出
发出的售票单据;S1 票
次/
F2 售票单,向客户售票
1000处理逻辑处理
处理逻辑简述
输入的数据流
处理
输出的数据流
频率
编号 名称
单据
服务器录入P2.2 系统 票销售记录 的火车
F7 通过单,来
根据通过单将退
源于服务器退
票信息录入系统
票审理系统开
以作记录
出的同意单据 F5 未通过单,细记录
天
账,每次退票都要有详
次/
S1 票存系统、S2 流水
180服务器拒绝P2.3 退票
户退票 拒绝客
来源于服务器退票审理系统开出的不同意单据
根据未通过单,F6 拒绝退票单,拒绝客
拒绝客户的退票
次/
户的退票申请
申请,拒绝退票 天
表5.4处理逻辑
(5)数据存储如表5.5所示。
数据存数据存
简述
储编号 储名称
售票、退票后修票存系S1 统
息
类型+开单日期+单号+车票编号+车售票、退票的流S2 流水账
水账记录
时间+到站时间+车票价格+交易数量+客户名 表5.5数据存储
P2.2
次+座位类型+出发站+目的站+发车
P1.1、P1.2、改当前票务信
目的站+发车时间+到站时间
P2.2
车票编号+车次+座位类型+出发站+
P1.1、P1.2、数据存储组成
相关联的处理
6.主要算法
6.1数据结构的描述:
车票=日期+价格+出发站+终点站+售票站+座号+车次+性质+编号 日期=年+月+日+时+分 价格=“1”~“9999” 出发站=1{汉字}6 终点站=1{汉字}6 售票站=1{汉字}6 座号=车厢号+座位号 车次=“1”~“9999” 性质=“1”~“6” 注:如“1”表示空调硬座特快,“2”表示空调软座普快等 编号=“000000001”~“999999999”
6.2算法
1.车次表(车次,始发站,始发时间,终到站,终到时间,总里程,车况)注:①举例:(K59,北京,20:30,长春,7:06,670,特快);②“车况”分为‘特快空调’、‘特快’(不是空调车)、‘普通’。
2.经过站表(车次,经过站,到站时间,停留时间,里程)注:这里的‘里程’指从始发站到该站的里程。
3.票价表(车次,到站,席别,车厢号,座位号,票价)
注:①‘席别’分为硬座、硬卧、软卧。②硬卧分上、中、下铺,‘座位号’一项上填写方式如‘9上’,‘9中’和‘9下’。③票价采用四舍五入方式取整数。4.车票定价公式:
特快空调:硬座—0.30元/公里,硬卧—0.65元/公里,软卧—1.20元/公里; 特快:硬座—0.20元/公里,硬卧—0.55元/公里,软卧—1.00元/公里; 普通:硬座—0.10元/公里,硬卧—0.40元/公里,软卧—0.80元/公里。
售票表(车次,到站,发车日期,车厢号,座位号,已售否,售票日期)
第五篇:铁路网上售票系统数据库设计
目 录
《数据库课程设计》论文...............................................................................................................................铁路网上售票系统项目开发背景:.....................................................................................................1 铁路网上售票系统的总目标是:.........................................................................................................1 项目开发的意义:.................................................................................................................................1 1.需求分析...................................................................................................................................................2 1.1 需求分析阶段目标和任务..............................................................................................................2 1.1.1 需求分析阶段目标...............................................................................................................2 1.1.2 需求分析阶段任务...............................................................................................................2 1.2 需求分析成果..................................................................................................................................3 1.2.1 流程图...................................................................................................................................4 1.2.2 数据字典...............................................................................................................................5 2.数据库结构设计.......................................................................................................................................5 2.1 概念设计..........................................................................................................................................5 2.1.1 分E-R图建立......................................................................................................................6 2.1.2 全局/整体E-R图.................................................................................................................6 2.2 逻辑设计..........................................................................................................................................6 2.2.1 建立关系模式.......................................................................................................................7 2.2.2 关系模式规范化处理...........................................................................................................7 2.2.3 用户子模式建立...................................................................................................................7 2.2.4 关系模式逻辑结构定义.......................................................................................................6 3. 数据库物理设计.....................................................................................................................................6 3.1 物理设计阶段目标和任务..............................................................................................................6 3.2数据存储方面...................................................................................................................................6 3.2.1 建立索引的原则...................................................................................................................6 3.2.2 建立索引...............................................................................................................................7 3.2.3 系统功能模块图...................................................................................................................7 4.数据库实施与测试...................................................................................................................................7 4.1 数据库实施......................................................................................................................................7 4.1.1 数据库及数据库对象建立...................................................................................................7 4.1.2 数据入库.............................................................................................................................10 4.2 数据库测试....................................................................................................................................10 5.总结.........................................................................................................................................................10 6.附录.........................................................................................................................................................11 附录1:................................................................................................................................................11 附录2....................................................................................................................................................15 附录3:................................................................................................................................................18
铁路网上售票系统项目开发背景:
信息时代的到来,互联网对于企业和事业单位的运营和发展日益重要,网上交易也逐渐被人们认可,并成为未来交易的发展方向。铁路售票系统也不例外。
铁路网上售票系统是铁路旅游服务信息系统的一个重要组成部分,为旅客提供优质便捷的服务。为了提高铁路客运的售票效率,丰富铁路客运的营销手段,火车站售票总站及其下属代售点可以通过公用的互联网资源,实现网上的售票,查询及管理工作。
铁路网上售票系统的总目标是:
在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的铁路网上售票系统,为企业的决策层提供准确、精细、迅速的车票销售信息。
项目开发的意义:
信息时代已经来临,信息处理的利器——计算机应用于火车站售票的日常管理为火车站售票的现代化带来了从未有过的动力和机遇,为火车站票务管理领域的飞速发展提供了无限潜力。采用计算机管理信息系统已成为火车站票务管理科学化和现代化的重要标志,给火车站票务带来了明显的经济效益和社会效益。计算机已经成为人们生活不可或缺的一部分。
然而,随着旅游业的逐渐的成熟发达,铁路客运量大幅度的提高,各大省市的列车都显著的增加,这些都对列车票务管理系统提出了更高的要求,所以要不断的完善更新列车票务管理系统,提高列车售票系统的工作效率。列车在我国的人员流动、物资运输中占据着举足轻重的地位。火车的特殊性及可能经过多个城市,每个城市的车站可以出售此火车的车票。而且同一车站可能有多辆车经过。许多希望以最快的方式选择自己想来乘坐的那一趟列车。所以以人工的方式是不可能实现这种功能的。一种可行的方案是基于客户端服务器的体系结构。服务器为数据库系统,存储所有必要的信息。客户端通过连接到服务的应用程序快速、准确地完成相应的工作,通过网上订购,可以达到高效、便捷的购票。铁路网上售票系统的实施,将会在一定程度上促进铁路客运生产力和生产关系的变革,增强市场竞争能力,提高铁路部门的工作效率,提升管理水平,减少劳动强度,方便广大旅客购票,有一定的社会和经济效益。
1.需求分析
主要包括需求分析阶段目标、任务和成果。
1.1 需求分析阶段目标和任务 1.1.1 需求分析阶段目标
(1)了解目前铁路网上售票流程和注意事项,通过具体调查了解客户需求并总结业务流程。
(2)与指导老师沟通交流该项目的可行性,征求老师意见,修改不合理的地方,为以后的设计打下基础。
1.1.2 需求分析阶段任务
随着旅游业的逐渐的成熟发达,铁路客运量大幅度的提高,各大省市的列车都显著的增加,这些都对列车票务管理系统提出了更高的要求,所以要不断的完善更新列车票务管理系统,提高列车售票系统的工作效率。随着科学的不断进步,计算机应用已经遍布整个社会的每个角落。目前社会正处于健保发展方兴未艾的时代,各火车站莫不兢兢业业地改善本身的体制或管理方式,以适应健保越来越严格的规范。列车在我国的人员流动、物资运输中占据着举足轻重的地位。全国有大量的人员通过搭乘火车到达目的地。而与火车的特殊性及可能经过多个城市,每个城市的车站可以出售此火车的车票。而且同一车站可能有多辆车经过。许多希望以最快的方式选择自己想来乘坐的那一趟列车。所以以人工的方式和单纯的列车票务管理系统都不可能实现这种功能的。一种可行的方案是通过网上订购,可以达到高效、便捷的购票。铁路网上售票系统的实施,将会在一定程度上促进铁路客运生产力和生产关系的变革,增强市场竞争能力,提高铁路部门的工作效率,提升管理水平,减少劳动强度,方便广大旅客购票,有一定的社会和经济效益。
(1)处理对象
系统要处理的对象主要包括票存系统基本信息、票务人员基本信息、客户基本信息、订票单基本信息、退票单基本信息、车票基本信息、车票销售记录基本信息。(详细的信息见于数据查询表)2
(2)功能要求
系统要实现的主要功能:
①查询:可以通过起点站与终点站在进行查询,也可根据具体的车次输入进行查询,同时每次查询都会显示车次号,点击即可显示该趟列车所进过站点的详细信息,其中包括所到达每个站的到达时间与出发时间。
②客户注册、登录:由于要进行网上订购车票,用户需注册,填写有关信息,由由票务人员负责送车票到客户手中。
③订票业务:本系统为网上订票,用户经过查询车次信息、票务信息,找到自己所需的车票通过所关联的账户进行订购。
⑤更新功能:该系统随时跟据车辆的变化情况进行更新,增加车辆时可以在系统中插入该车的详细信息,同时也能根据需要修改某趟车经过的站点与发车时间,当某趟车停止、开行时可以删除该趟车的信息。同时包括对列车信息、站点信息、订票记录等的更新功能。
⑥车票配送:客户在订购了车票之后,管理人员通过后台管理订票记录,然后根据客户的要求由票务人员及时为其配送车票。
(3)安全性和完整性要求
安全性先通过视图机制,该系统创建了很多视图,不同用户只能访问系统授权的视图,这样可以提供系统数据一定程度上的安全性,也可以通过用户授权机制,根据用户被授权的级别来分配用户权限,从而达到更高层次的安全保密功能。
完整性要求主要用来限制各基本表中信息的真实性和可靠性,满足参照完整性、实体完整性、用户自定义完整性的要求。
1.2 需求分析成果 1.2.1 流程图
铁路网上售票系统业务流程图如下图1.1—图1.3:
(1)客户注册及登录流程图:
反馈不批准注册处理反馈登录失败处理客户填写注册信息提交服务器客户填写登录信息提交服务器注册成功处理登录成功反馈图1.1 注册登录流程图
(2)订票业务流程图:
即时退票请求即时退票理由递交票务人员开出填写车票信息提交即时退票单支付客户登录服务器录入票款送达呈现相关车票列出已购车票填写订票单提交提出交付票务人员递交售票单开出图1.2 订票业务流程图
(3)退票业务流程图:
反馈不同意退票不同意返还客户登录服务器票款填写退票申请单提交提出票务人员递交退票单开出图1.3 退票业务流程图铁路网上售票系统数据流程图如下图1.4—图1.7:(1)顶层数据流程图:
E1客户订票单、退票申请单售票单、退票单P0订票、退票S1图1.4 顶层数据流程图票存系统
(2)第一层数据流程图:
铁路网上售票系统E2服务器车票清单E1客户订票单售票单P1订票P3查验查验清单S1票存系统 退票申请单退票单P2退票图1.5 第一层数据流程图
(3)第二层数据流程图—订票:
P1E1客户F1 订票单F2 售票单P1.1售票S1票存系统 S2流水账F3 即时退票单P1.2即时退票图1.6 第二层数据流程图——订票
1.2.2 数据查询
包含数据项、数据结构、数据流、处理逻辑、数据存储定义(详见附录1)。
2.数据库结构设计
主要包括概念设计和逻辑设计两个部分。
2.1 概念设计
概念设计阶段主要是将需求缝隙阶段得到的用户需求抽象为信息结构即概念模型的过程,它是整个数据库设计的关键,设计概念结构通常有四类方法:自顶向下、自底向上、逐步扩张、混合策略。
2.1.1 分E-R图建立
参照业务流程图和数据流程图,分别画出分E-R图,如图2.1至2.4所示。(1)根据图1.2抽象出的进货分E-R图:
订票数量n送票日期送票时间1客户送票票务人员图2.1 车票配送E-R图
(2)根据图1.6抽象出的销售分E-R图:
客户1订票n订票单1转换1n车票图2.2 客户订票E-R图
(3)根据图1.7抽象出的存储分E-R图:
客户1退票n退票单1转换2n车票图2.3 客户退票E-R图
(4)根据图1.4抽象出的存储分E-R图:
出入账金额记录时间记录日期1n出入账类型记录数量车票记录图2.4 售票记录E-R图票存系统
各E-R图中的实体属性如下图2.5至图2.10:
(1)车票及其属性:
车票编号车次座位类型座位编号图2.5 车票及其属性车票出发站目的站发车时间到站时间车票价格
(2)客户及其属性:
客户身份证号客户名客户电话客户客户地址登录ID客户银行卡号登录密码图2.6 客户及其属性
(3)票务人员及其属性:
票务人员编号票务人员票务人员工作地点票务人员姓名图2.7 票务人员及其属性
(4)票存系统及其属性:
票存分系统编号票存系统票存分系统地址图2.8 票存系统及其属性
(5)订票单及其属性:
订票日期订票单号订票手续费订票时间订票数量订票单图2.9 订票单及其属性
2.1.2 全局/整体E-R图
根据各分E-R图合并整体E-R图,具体方法是将4个E-R图中相同的实体,进行合并,消除属性冲突、命名冲突、结构冲突之后得到总E-R图如图2.11所示。
记录1车票n转换11订票单n票存系统nn转换2订票1n11退票单退票客户n票务人员1送票图2.11 全局E-R图
2.2 逻辑设计
概念设计阶段是独立于任何一种数据模型的,而逻辑设计阶段则与现实结合起来,逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为与项目所支持的数据模型相符合的逻辑结构。具体任务包括将E-R图转换成关系模型、模型优化、数据库模式定义、用户模式设计。
2.2.1 建立关系模式
E-R图向关系模型的转换遵循如下规则,一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码。
对于实体间的联系则有不同的情况:一个1:1联系可以转换为一个独立关系模式,也可以与任意一端关系模式合并;一个1:N联系可以转换为一个独立关系模式,也可以与n端实对应的关系模式合并;一个M:N联系转换为一个独立关系模式,具有相同码的关系模式可以合并。
根据以上原则,对于该系统的E-R图进行转换,从而得到本E-R图向关系模型的转换如下:
票存系统(票存分系统编号、票存分系统地址)
票务人员(票务人员编号、票务人员姓名、票务人员工作地点)
客户(客户身份证号、客户名、客户银行卡号、客户电话、客户地址、登录ID、登录密码、票务人员编号)
订票单(订票单号、订票日期、订票时间、订票数量、订票手续费、客户身份证号)
车票(车票编号、车票价格、车次、座位类型、座位编号、出发站、目的站、发车时间、到站时间、订票单号、退票单号)
记录(车票编号、出入账类型、票存分系统编号、记录日期、记录时间、出入账金额)
2.2.2 关系模式规范化处理
以上关系模式中的各实体和联系之间不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF。
2.2.3 用户子模式建立
用户子模式的建立如表2.1所示。
表2.1用户子模式
编号 V-01 V-02 V-03 V-05 用户子模式名称 Ticket_view Customer_view Book_view Record_view
定义 车票信息视图 客户信息视图 订票单信息视图 记录信息视图
作用
方便用户查询车票信息 方便票务人员查询客户信息 方便票务人员查询订票信息 方便票务人员查询记录信息
2.2.4 关系模式逻辑结构定义
详细的逻辑结构定义见附录2。
3. 数据库物理设计
3.1 物理设计阶段目标和任务
数据库的物理设计是为逻辑数据模型选取一个最合适应用需求的物理结构的过程,在这个阶段中需要完成的任务是:
(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。
3.2数据存储方面 3.2.1 建立索引的原则
建立索引一般有以下三个原则:
(1)如果一个或一组属性经常在查询条件中出现,则考虑在这个属性上建立索引。
(2)如果一个经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引。
(3)如果一个或一组属性经常在连接操作的连接条件中出现,则考虑在这个属性上建立索引。
3.2.2 建立索引
根据系统和用户的的需要,由于客户信息、车票信息、订票单编号、退票单编号等属性查询操作比较平凡,所以对其所在表建立唯一索引,索引见表3.1。
表3.1索引表
所在表名 客户信息表 车票信息表
索引名称 Customer_index Ticket_index
索引类型 唯一 唯一
建立引用的基项 Cno Tno 3.2.3 系统功能模块图
系统基本功能模块图如3.1所示。
铁路网上售票系统客户信息管理车票信息管理订票信息管理退票信息管理车票存储管理车票销售统计管理图3.1 功能模块图
4.数据库实施与测试
主要包括数据库实施和测试两个部分。
4.1 数据库实施
4.1.1 数据库及数据库对象建立
主要包括:数据库、基本表、视图、索引、触发器以及存储过程。详细DDL语句以及相关代码,见附录3。
(1)建立索引:
create unique index Customer_index onCustomer(Cno);create unique index Ticket_index on Ticket(Tno);create unique index Book_index on Book(Bno);create unique index Dishonour_index on Dishonour(Dno)(2)创建的视图如表4.1所示
表4.1视图表 视图编号 V-01 V-02 V-03 V-04 V-05 视图名称 Ticket_view Customer_view Book_view
定义 车票信息视图 客户信息视图 订票单信息视图
作用
方便用户查询车票信息 方便票务人员查询客户信息 方便票务人员查询订票信息 方便票务人员查询退票信息 方便票务人员查询记录信息 Dishonour_view 退票单信息视图 Record_view
记录信息视图
(3)创建的存储过程如表4.2所示:
表4.2存储过程表
编号 N-01 N-02 N-03 N-04 N-05 N-06 N-07 N-08 N-09 N-10 存储过程名称 Ms_Insert Ts_Insert C_Insert B_Insert D_Insert T_Insert R_Insert B_Delete D_Delete R_Delete
作用
向票存系统基本信息表中插入一个元组 向票务人员基本信息表中插入一个元组 向客户基本信息表中插入一个元组 向订票单基本信息表中插入一个元组 向退票单基本信息表中插入一个元组 向车票基本信息表中插入一个元组 向记录基本信息表中插入一个元组 从订票单基本信息表中删除一个元组 从退票单基本信息表中删除一个元组 从记录基本信息表中删除一个元组
(4)创建的触发器如表4.3所示:
表4.3触发器表
编号 T-01 T-02 T-03 T-04 T-05 T-06 触发器名
delete_TicketStaff delete_Customer delete_Book delete_Dishonour delete_Ticket DoNotDishonour
作用
删除票务人员信息级联删除客户信息 删除客户信息级联删除客户订票及退票信息 删除订票信息级联删除车票信息 删除退票信息级联删除车票信息 删除车票信息级联删除记录信息 车票价格低于2元不予退票
4.1.2 数据入库
系统包括7张基本表,在Excel中录入数据,然后使用SQL Server 2000数据导入功能,直接将数据导入到相应的基本表中。
4.2 数据库测试
主要内容是对建立的数据库及数据库对象进行测试,详细的测试情况见附录3。
5.总结
通过这次课程设计的感触很多。第一感觉就是理论和实践的差距远远大于人的想象;课堂上觉得很简单的东西,真到了要做的时候,会发现很难。在这次实习之前我感觉数据库就像一种语言一样,学会它的语法就应该可以了,不过现在才明白数据库重点在于设计,设计的过程才是最有价值,最有意义也是最难的。
通过这次实习,我收获了很多。首先是在需求分析阶段,这个阶段的任务可以说是整个数据库设计任务量最大的阶段,我花了大量时间在业务流程图和数据流程图的创建上,不断的修改,不断的和指导老师交流。在这个过程中真切的了解了业务的分析的重要性。在概念设计阶段,主要的任务就是抽象出E-R图。然后就是逻辑设计阶段了,这个阶段是要把让我头疼的E-R图转换为关系模式,这一阶段我花费的时间相对较少。经过不断的尝试和修改,很快就完成了逻辑结构的设计,得到了该建立的表。这个时候到了数据库实施阶段了,以前我认为创建基本表、视图、存储过程、触发器是数据的重点,现在看来这些都是皮毛,这些都是数据库设计过程中最简单最基础的问题。真正需要能力和时间的是前面的需求分析、概念设计、逻辑设计阶段,把实际问题抽象成计算机能够实现解决的问题才是最重要的,这是数据库可以实施的必要条件。
这次课程设计的任务,我完成的不是很好,有些方面还没有实现其功能。人无完人我知道我做出的系统不是很全面,即便如此,我还是从其中学到了很多技巧。在以后的学习中,我会多实践,多练习,书本上知识的学习毕竟没有实践来的有效,在此,我要感谢我的指导老师这么久对我的指点。
6.附录
附录1:
数据查询表:
(1)数据项如表6.1所示。
表6.1 数据项
数据项编号 I1 I2 I3 I4 I5 I6 数据项名数据项含义
称 Tno Tprice 车票编号 车票价格
车票的编号 车票的售价 某次列车的编号 包括硬座、软卧、无座Tstype Tpno Tsta 座位类型
等
座位编号 出发站
出发
车票上所示乘客要到达I7 Tdes 目的站 的地方
YYYY:MM:DD I8 Tstatime 发车时间
列车从该站出发的时间
datetime
hh:mm YYYY:MM:DD I9 I10 I11 I12 I13 I14 I15 Tdestime 到站时间 Bno Bdate Btime Bqua Bpou Sno 订票单号 订票日期 订票时间 订票数量 订票手续费
外费用
售票单号
销售火车票单据的编号
char
列车终到目的站的时间 订购火车票单据的编号 订购火车票的日期 订购火车票的时间 一次性订购的数量 订购火车票所支付的额
int
datetime char datetime datetime int
hh:mm
YYYY:MM:DD hh:mm 1-50
char
车厢号和座位编号 车票上所示乘客从何处
char
char
char
char int char
简述
类型
(位)60 8
宽度
取值范围
Trainno 车次
数据项编号 I16 数据项名数据项含义
称
开出销售火车票单据的Sdate 开售单日期
日期
开出销售火车票单据的datetime
简述
类型
宽度
取值范围
(位)
YYYY:MM:DD I17 I37 I38 Stime Cname Cno 开售单时间
时间
客户名 客户身份证
客户的身份证号码
号 客户银行卡
客户的姓名
datetime char char
20
hh:mm I39 I40 I41 I42 Ccano 号
Cphone Cadd Cid 客户电话 客户地址 登录ID
客户的银行卡号码 客户的电话号码 客户的住址
客户办理网上业务的名
char char char char 12 30 14
称
客户办理网上业务的名I43 Cpwd 登录密码
称对应的密码
票务人员编I44 Tsno 号 票务人员姓I45 Tsname 名 票务人员工I46 Tsadd 作地点 票存分系统I47 Msno 编号
票存系统分系统的编号
char
票务人员所在的工作地
char
各车站票务人员的姓名
char
各车站票务人员的编号
char
char
(2)数据结构如表6.2所示。
表6.2 数据结构 DS01 客户信息
I38 客户身份证号
I37 客户姓名 I39 客户银行卡号
I40 客户电话 I41 客户地址 I42 登录ID I43 登录密码
DS02 车票信息
I1 车票编号
I3 车次 I4 座位类型 I5 座位编号 I6 出发站 I7 目的站
I2 车票价格
DS03 票务人员信息
I8 发车时间 I9 到站时间
I44 票务人员编号 I45 票务人员姓名 I46 票务人员工作地点
DS04 订票单的数据结构
I10 订票单号
I37 客户姓名 I38 客户身份证号 I39 客户银行卡号 I40 客户电话 I41 客户地址 I3 车次 I4 座位类型 I6 出发站 I7 目的站
I2 车票价格 I13 订票数量 I14 订票手续费
DS05 售票单的数据结构
I15 售票单号
I8 发车时间 I9 到站时间 I11 订票日期 I12 订票时间
I3 车次 I37 客户姓名 I38 客户电话 I41 客户地址 I18 领票人姓名 I19 领票人身份证号 I44 票务人员编号 I45 票务人员姓名 I13 订票数量 I21 交款金额
I16 开售单日期 I17 开售单时间 I20 交款日期
(3)数据流如表6.3所示。
表6.3数据流
数据流简述
名称
客户网上欲订票单 订购火车票的单据 服务器开出售票单 销售火车票的单据 业务人员开即时退出的即时退票单
票的单据 客户向服务退票申器申请退票请单 的单据 服务器不同未通过意客户退票单
申请的单据 服务器拒绝拒绝退客户退票的票单
单据 服务器同意审理模通过单 客户退票申
块
请的单据 服务器开出退票单 的客户退票的单据 服务器
客户
I37+I38+I39+I6+I7+I
2180份/
+I31+I35+I36+I8+I33+
天
I34+I44+I45
天 1800份/
块 票存模
I1+I2+I31+I29+I30
天
天
180份/
1800份/服务器
客户
I29+I30
天
天
I37+I38+I1+I2+I31+
20份/
200份/
块 审理模
服务器
I29+I30
天
天
I37+I38+I1+I2+I31+
20份/
200份/客户
块
I31+I29+I30
天
天
审理模
I37+I38+I39+I1+I2+
200份/
2000份/
员
I24 票务人
服务器 I2+I25+I26+I27+I23+
天
天 服务器
客户 客户 来源
去向
I37+I38+I39+I40+I41+
1000份
服务器 I3+I4+I6+I7+I2+I13+
/天
I14+I8+I9+I11+I12 I3+I37+I38+I39+I18+
1000份
I19+I13+I21+I16+I17+
/天
I20+I44+I45 I37+I38+I1+I44+I45+
10份/
100份//天 10000份/天 10000份数据流
数据流
数据流组成
量
量
数据流
高峰流(4)处理逻辑如表6.4所示。
表6.4处理逻辑
处理逻辑处理
处理逻辑简述 输入的数据流
处理
输出的数据流
编号 名称
服务器向F1 订票单,来P1.1 售票 客户销售源于客户发出火车票 的订票单据
F7 通过单,来服务器的录入源于服务器退P2.2 火车票销系统 票审理系统开售记录
出的同意单据
附录2 基本表的建立:
1.创建铁路网上售票系统 create database RTSO
2.创建票存系统基本信息表: create table MemorySystem(Msno char(14)primary key, Msadd char(20)unique not null)
3.创建票务人员基本信息表: create table TicketStaff(Tsno char(14)primary key, Tsname char(10)not null, Tsadd char(20)not null)
根据客户订单信
息,向客户开出售
票单销售火车票并
进行登记记录
根据通过单将退票
信息录入系统以作
记录
F2 售票单,向客户售票发
出的售票单据;S1 票存系
统、S2 流水账,每次售票
都要有详细记录 S1 票存系统、S2 流水账,每次退票都要有详细记录
频率
1000
次/
天
180
次/天
4.创建客户基本信息表: create table Customer(Cno char(20)primary key, Cname char(10)not null, Ccano char(20), Cphone char(12)not null, Cadd char(30)not null, Cid char(14)not null, Cpwd char(20)not null, Tsno char(14)not null, foreign key(Tsno)references TicketStaff(Tsno))
5.创建订票单基本信息表: create table Book(Bno char(14)primary key, Bdate datetime not null, Btime datetime not null, Bqua int check(Bqua>0 and Bqua<51)not null, Bpou int not null, Cno char(20)not null, foreign key(Cno)references Customer(Cno))
6.创建车票基本信息表: create table Ticket(Tno char(60)primary key, Tprice int not null,Trainno char(8)not null, Tstype char(8)not null, Tpno char(8)not null, Tsta char(20)not null, Tdes char(20)not null, Tstatime datetime not null, Tdestime datetime not null, Bno char(14)not null, Dno char(14), foreign key(Bno)references Book(Bno), foreign key(Dno)references Dishonour(Dno))
7.创建售票记录基本信息表: create table Record(Tno char(60)not null, Rsty char(6)not null, Msno char(14)not null, Rdate datetime not null, Rtime datetime not null, Ramo int check(Ramo<100001)not null, primary key(Tno,Rsty), foreign key(Tno)references Ticket(Tno), foreign key(Msno)references MemorySystem(Msno))附录3
导入数据
use RTSO
--向表中导入数据
insert into MemorySystem(Msno, Msadd)values('001','海口火车站')insert into MemorySystem(Msno, Msadd)values('003','三亚火车站')
select*from MemorySystem
insert into TicketStaff(Tsno,Tsname,Tsadd)values('112','李一','海口火车站')insert into TicketStaff(Tsno,Tsname,Tsadd)values('115','李二','三亚火车站')
insert into Customer(Cno,Cname, Ccano,Cphone,Cadd,Cid,Cpwd,Tsno)
values('***900 ','陶羽爱','***8923','***','海甸岛三西路','asdf123','123456','112')insert into Customer(Cno,Cname, Ccano,Cphone,Cadd,Cid,Cpwd,Tsno)values('***270 ','单康枫','***7245','***','广州
','qwer321','123456','115')
数据查询
use RTSO--从TicketStaff中查询员工号为的信息
select *from TicketStaff where Tsno='112'
删除数据
use RTSO
--从Customer中删除姓名为‘陶羽爱’的所有信息 delete from Customer where Cname='陶羽爱'