车站售票管理系统数据库课程设计报告.doc_第1页
车站售票管理系统数据库课程设计报告.doc_第2页
车站售票管理系统数据库课程设计报告.doc_第3页
车站售票管理系统数据库课程设计报告.doc_第4页
车站售票管理系统数据库课程设计报告.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

天津农学院计算机科学与信息工程系SQL Server教学实习报告实习名称: SQL Server 专 业: 计算机科学与技术 班 级: 2010级 农信 班 学 号: 1008074112 姓 名: 张春 指导教师: 赵光煜 成 绩: 2012年 9 月18 目 录目 录11系统需求分析报告11.1概述11.2系统功能分析21.3数据流图21.4数据字典32概念及逻辑结构设计52.1 E-R图52.2关系模型72.3数据库结构73数据库设计93.1建立表车票和顾客93.2 建立触发器114 系统软件结构124.1系统功能设计124.2其他需求144.3说明145 总结与体会176 参考文献171系统需求分析报告1.1概述汽车售票管理系统主要用于车站日常的票务处理。车售票管理系统在正常运行中需要对使用该系统的主要是汽车站售票人员、汽车站售票工作的管理人员与系统管理员。为达到操作过程中的直观、方便、实用、安全等要求,我们组在这个系统中采用模块化程序设计的方法,便于系统功能的组合和修改,以及扩充和维护。1.2系统功能分析根据需求分析,本系统要实现以下的基本功能。1登录功能:分为汽车站售票人员和系统管理员两种权限登陆。用户通过输入不同用户名和密码进行身份验证,系统通过用户名和密码判断不同用户的权限,从而确定该用户可以执行的操作。2车票信息查询功能:由汽车站的普通售票人员通过不同的检索入口,查询车票信息,并进行排序。3修改功能:汽车站售票人员、汽车站售票工作的管理人员能够修改自身的用户名和密码,系统管理员则能实现系统用户与普通用户的添加,修改普通用户与系统管理员的密码,以此确保该系统能够安全操作,避免不必要的损失。4汇总功能:对当天车票的信息进行汇总。图1-1 顶层图图1-2 0层图图1-3 售票1层图顾客售票人员车站售票管理系统购票信息售票信息顶层图购票信息查询可供票处理买票车票车票记录车票汇总缺票记录0层图售票记录购票信息1层图查询可供票处理买票车票售票记录车票记录订票信息查询顾客信息核对后的顾客信息查询可供票处理订票车票订票记录车票记录图1-4 订票1层图退票信息处理退票退票记录图1-5 退票1层图1.3数据流图1.4数据字典1.数据项 票号、票价、车次、日期、车型、开车时间、票种、座位号、起始站、终点站、身份证号、银行卡号、数量、退票时间、退票手续费、订票时间、订票手续费2数据结构表1.1 车票的数据结构DS-01 车票DS-02:车票标志DS-03:车次信息DS-04:座位信息DS-05:票价信息I1:车票编号I3:起始站I8:座位号I9:全票价I2:车票类型I4:车次编号I10:折扣I5:终点站I6:发车时间I7:乘车日期3数据流数据流编号:DS1数据流名称:车票简述:车票有关信息数据流来源:用户执行售票操作结果数据流去向:购票旅客数据流组成:车票编号+车票类型+车次信息+座位信息+票价信息4数据存储 售票记录:票号,起始站,终点站,票价,车次,日期,开车时间,车型,票种,座位号,售出时间 退票记录:票号,起始站,终点站,票价,车次,日期,开车时间,车型,票种,座位号,退票时间 订票记录:票号,起始站,终点站,票价,车次,日期,开车时间,车型,票种,座位号,订票时间,顾客身份证号缺票记录:票号,起始站,终点站,票价,车次,日期,开车时间,车型,票种 车票记录:票号,起始站,终点站,票价,车次,日期,开车时间,车型,票种,座位号,售出时间,票数5处理过程 车票汇总:工作人员将一天所售出的票进行统计,包括票数,票类,形成确定的车票记录。 查询:将顾客需要的车票信息输入系统,并查询其是否可供应。 查询顾客信息:为订票所设,将顾客的准确信息记录,为其预定所车票。 处理买票:进行买票交易,把顾客需要的票(可供应)售出,并在系统中作相应记录,确定车票记录。 处理订票:进行订票交易,工作人员为顾客预定其所需车票,并在系统中作相应记录,确定订票记录。 处理退票:进行退票交易,工作人员为顾客办理退票手续,并在系统中作相应记录,确定退票记录。 2概念及逻辑结构设计 2.1 E-R图本系统根据以上的设计规划出的实体有:车票实体、车站实体、顾客实体。各个实体具体的描述-图如下: 车票开车时间票号票种 日期起始站 票价座位号终点站车次车型 图2-1车票ER图 顾客 身份证号银行卡号 图2-2 顾客ER图 换票退票时间顾客售票退票票号退票手续费车票新票号原票号换票时间换票手续费订票日期交易时间数量起始站终点站身份证号交易金额1N1N1N1N 图2-3实体之间ER图2.2关系模型车票与顾客之间的联系售票 1:N车票(票号,车次,日期,车型,票价,开车时间,票种,座位号,起始站,终点站)顾客(身份证号,银行卡号,票号)退票1:N车票(票号,车次,日期,车型,票价,开车时间,票种,座位号,起始站,终点站)顾客(身份证号,银行卡号,票号,退票时间,退票手续费)订票1:N车票(票号,车次,日期,车型,票价,开车时间,票种,座位号,起始站,终点站)顾客(身份证号,银行卡号,票号,日期,交易时间,交易金额,数量,起始站,终点站)2.3数据库结构表2.1 Train表详细设计字段名数据类型是否主键是否必填字段说明TrainID字符是是车次编号TrainType单精度否否客车型号PlateNumber字符否是车牌号TrainHolder字符否否责任人RunningWay字符否否经营路线SeatLimit单精度否是座位限额OutSetTime日期否是发车时间表2.2 Seat表详细设计字段名数据类型是否主键是否必填字段说明TrainID字符否是车次编号Date日期否是日期Terminal字符否是终点站Selled布尔否否票是否售出Price单精度否是车票价格表2.3 PriceDiscount表详细设计字段名数据类型是否主键是否必填字段说明RecordNumber自动编号是是记录号TicketTypeID单精度否是车票类型Discount单精度否是折扣TrainID字符否是车次表2.4 Price表详细设计字段名数据类型是否主键是否必填字段说明TerminalID字符是是终点站编号OutStation字符否否起始站TerminalName字符否是终点站TNPYCode字符否是拼音码TrainID字符否是车次编号TicketPrice单精度否是票价表2.5 Type表详细设计字段名数据类型是否主键是否必填字段说明RecordID自动编号是是记录号TicketTypeID单精度否是车票类型编号TicketType字符否是车票类型3数据库设计本车站售票系统有两个实体,分别是车票和顾客,利用SQL建表如下:3.1建立表车票和顾客 车票 顾客 系统实现的具体功能和创建的各类代码如下所示:create database 练习on primary(name=trainticket, filename=E:my.mdf, size=10mb,maxsize=30mb, filegrowth=2mb)log on( name=trainlog, filename=E:my.ldf, size=10mb, maxsize=20mb, filegrowth=26%)Create table 车票(票号 nchar(10) primary key not null,日期 nchar(10) not null, 车次 nchar(10) not null, 座位号 nchar(10)Not null, 开车时间 nchar(10) not null,车型 nchar(10) not null, 检票口 nchar(10) not null, 起始站 nchar(10) not null,终点站 nchar(10) not null, 票价 nchar(10) not null, 票种 nchar(10) not null)Create table 顾客(身份证号 float primary key not null,银行卡号 float not null)3.2 建立触发器Trigger1create trigger 顾客_insert on 顾客for insert,updateas declare _身份证号as float select _身份证号=i.身份证号 from inserted i if not exists (select * from 顾客where 身份证号=_身份证号) begin print该用户不存在! rollback tran end else rollback tran print插入成功Trigger2create trigger insead_of_insert on 车票instead of insertas declare _票号 nchar(10), _日期 nchar(10), _车次 nchar(10), _座位号 nchar(10), _开车时间 nchar(10), _车型 nchar(10) _检票口 nchar(10) _起始站 nchar(10) _终点站 nchar(10) _票价 nchar(10) _票种 nchar(10) set _票号=(select 票号from inserted) set _日期=(select 日期from inserted) set _车次 =(select 车次from inserted) set _座位号=(select 座位号from inserted) set _开车时间=(select 开车时间from inserted) set _车型=(select 车型from inserted)set _检票口=(select 检票口from inserted)set _起始站=(select 起始站from inserted)set _终点站=(select 终点站from inserted)set _票种=(select 票种from inserted)set _身份证号=(select 身份证号from inserted)set _银行卡号=(select 银行卡号from inserted)insert 顾客values(_身份证号, _银行卡号)insert 车票values(_票号, _日期,_车次,_身份证号码,_座位号,_开车时间,_车型,_检票口,_起始站,_终点站,_票种,_银行卡号)4 系统软件结构4.1系统功能设计火车站售票管理系统主要设有五个主要功能模块:分别是车次管理、票价管理、票务管理、用户管理和查询管理。1.车次管理模块该模块主要实现车次信息的编辑。车次管理中的数据源为Access数据库中Train表,在此管理部分中,能够使用界面操作实现车次信息的编辑,并将数据库中的数据按照编辑的要求来及时更新数据表中的相关数据。2票价管理模块该模块主要实现票价信息的录入、修改与删除以及票价折扣信息的录入、修改与删除。 票价详细信息的录入、修改、删除,它的数据源为Access数据库的Price表。在此管理部分中,通过票价管理(FrmPriceManage)界面来选择记录并决定执行何种操作,是修改、添加或删除。当命令为修改或者添加时则自动跳转到票价编辑窗体(FrmPriceEdit)实现票价信息的编辑并更新数据库中相应数据记录。3票务管理模块票务管理部分实现前台售票、前台退票功能。主要完成售票、远程售票、废票、取消废票功能、改签票、退票、取消退票功能、补票、售票查询和票款结算单填写等功能。4用户管理模块该模块主要实现用户添加,用户信息修改与用户的删除。所有系统用户的管理,包括系统普通用户与系统管理员。此管理模块数据源为Access数据库的Users表。在系统主界面中首先进入的是名称为FrmUserMan的用户管理主窗体,通过提取用户名、用户类型来查看用户具体信息,选择添加或删除用户进入名为FrmUserEdit的用户编辑界面进行操作,操作完成便更新数据库数据。 5查询管理模块 该模块主要实现拥护通过查询界面可以根据条件进行车次时刻、车次票价查询。 火车站售票管理系统票务管理票价管理车次管理用户管理查询管理车次信息编辑票价信息录入票价信息修改票价信息删除前 台 售 票前 台 退 票用户信息添加票价信息修改票价信息删除车次信息查询票价信息查询 4-1功能模块图4.2其他需求火车站售票系统数据库中的数据量十分庞大,而且更新速度十分快。在数据大小方面要求数据的属性要设置合理,假如是数据的属性值越大,则数据本身所占用的容量也就十分的庞大,不但会造成传输的不方便甚至错误,也更加重系统的负担,有可能削弱系统运行速度,使得系统无法达到预期的目的。另外,在整个系统当中要确保数据在保存与传递过程中的安全,以免发生严重的错误,造成巨大的损失。4.3说明售票 正常出售本站所有车次车票,并按要求打印出车票。 远程售票 正常出售远程车站所有车次车票,并按远程车站的要求打印出车票。 废票 在正常售票过程中, 可能因操作失误或打印机械故障等原因造成错票而作废车票。 取消废票 当废票时,发现废的票是不应该废的,即为正常票,需要通过取消废票来实现。 远程废票 对所售远程车票作废票处理。 退票 在正常退票时间内办理退票,并根据退票规定收取一定的手续费。 远程退票 对所售远程车票作退票处理。 取消退票 当退票时,发现退的票是不应该退的,即为正常的票,需要通过取消退票来实现。 改签票 由于乘客或车站某种原因需对已出售的车票作更换车次的车票。改签仅允许改签一次。 远程改签票 对所售远程车票作改签处理。 注销票 删除某些由于调试程序所用的票记录及其影响。 补票 只能在超过售票时限后进行,且在未发车之前,在统计时注意对非微机售票的票的处理(例如:剪刀票)。 售票查询 通过一定的授权和设定售票员可以查询在设定时间范围内或多少张票以前的出售、作废、改签和退票的情况,并对有权限的人员可有累计票款服务。 票款结算单 售票员每天售完车票后填写每日结算单,以便财务人员查询。 重打车票 在正常售票过程中, 可能因打印机械故障等原因造成错票而重新打印车票。 售票类型 车票中所有联都应有的信息为车次、起止站点、票价、发车日期时间,而正联所特有的信息为售票员工号、检票口、是否改签票、车票上应有的信息:车票固有票号、计算机打印的票号、票号条形码(仅用于自动检票的车站)。 车票类型 1)正常班次车票:发售的当天或预售正常轮班车次的车票。 2)远程售票:发售远程车站车次的车票,其打印格式同远程车站。 3)流水班次车票:发售的流水班次车票。 4)退票和改签票: 退票分为 A

温馨提示

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

评论

0/150

提交评论