ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:298.46KB ,
资源ID:11344548      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11344548.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库火车票销售系统.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库火车票销售系统.docx

1、数据库火车票销售系统长 沙 学 院课程设计说明书题目火车票预定管理系统系(部)数学与计算机科学系专业(班级) 姓名 学号 指导教师 起止日期2016.05.1605.27课程设计任务书课程名称:数据库系统原理课程设计题目:火车票预订管理系统1、某铁路局火车票预订管理系统需要如下信息:车次信息:车次编号、出发地、目的地、出发时间、到站时间、火车类型、里程数,座位数等。车票信息:座位号、价格、当前预售状态、座位类型等。客户:姓名、联系电话、身份证号码等。业务员:姓名、工号。其业务规则描述如下:一个客户可以预订(退订)多张火车票,但一张火车票只能被一个客户预订(退订);一个业务员能销售多张车票,但一

2、张车票只被一个业务员销售。一辆列车包含多张车票,但一张车票只属于一辆列车。2、系统功能的基本要求:按照一定条件查询、统计符合条件的火车、车票、客户信息等。例如火车车次查询、时刻表查询、剩余座位数、同一路线可选火车信息、客户购买历史等,能够在车票售出时更新可用火车票数,模拟完成火车票订票、退订业务。各阶段具体要求:1、需求分析阶段定义数据项的含义和取值定义目标系统的数据流2、概念结构设计阶段画出实体模型E-R图3、逻辑结构设计阶段将实体模型转化为关系模型给出每个关系的主关键字和函数依赖集分析你所设计的关系数据库模式是否属于3NF4、物理设计阶段确定所有字段的名称、类型、宽度、小数位数及完整性约束

3、 确定数据库及表的名称及其组成 确定索引文件和索引关键字5、数据库安全及维护设计阶段设计一个适合的数据库安全策略(用户身份认证、访问权限、视图)为了实现复杂的数据完整性约束,设计适当的触发器设计一个适合的数据库备份策略6、实施阶段要求所有操作必须在查询分析器中用SQL语句或系统存储过程完成。对于学有余力的同学,可以使用嵌入式SQL语句结合高级语言开发完成。设计工作量:(1)软件设计:完成问题陈述中所提到的所有需求功能。(2)论文:要求撰写不少于3000个文字的电子文档,详细说明各阶段具体要求。工作计划:安排两周时间进行课程设计,软件开发步骤如下,第一周完成14,第二周完成58,论文同步进行;1

4、) 选定题目 2) 需求分析 3) 概念结构设计 4) 逻辑结构设计 5) 物理设计 6) 数据库安全及维护设计 7) 数据库上机实现 8) 答辩 计划时间指导老师班级1314周潘怡、卓琳13软件1班1314周潘怡、卓琳13软件2班1314周刘欣、黄彩霞13软件3班1314周刘欣、黄彩霞13软件4班1314周杨刚、刘钢钦13软件5班1314周杨刚、刘钢钦 13软件6班注意事项提交电子文档长沙学院课程设计任务书 (每学生1份)长沙学院课程设计论文 (每学生1份)长沙学院课程设计鉴定表 (每学生1份)指导教师签名: 日期: 教研室主任签名: 日期:系主任签名: 日期:长沙学院课程设计鉴定表姓名 学

5、号 专业软件工程班级设计题目火车票预订管理系统指导教师指导教师意见:评定等级: 教师签名: 日期: 答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名: 日期: 系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀”、“良好”、“及格”、“不及格”四类;一、引言1.1编写目的随着时代的发展,计算机软件和系统的成熟,火车票的正当管理成为一个影响铁路部门正常运营的因素之一,而建立火车票订票管理系统是一个很好的解决办法。作为计算机应用的一部分,使用计算机对火车票信息进行管理,具有手工管理所无法比拟的优点,例如检索迅速、查找方便、可靠性高、存储量大、保密性好等,这些优点能够极

6、大的提高火车票信息管理的效率,也正体现了火车票的科学化正规化管理现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好的利用这些数据资源。本论文就是通过SQL的整体设计把数据库与应用程序相连接,做成一个火车票的订票管理系统,使得火车票管理员能够有效的管理车次信息、旅客信息、退票信息等。同时用户可以通过查询到相关的火车票信息,选择是否适合自己,也可以在网上直接订票、退票,省时省力 。1.2参考资料资料名称作者文件编号、版本数据库系统概论王珊、萨师煊2006年5月第4版现代软件工程孙涌2003年8月第1-246版 精通SQL server 2000数据

7、库管理与开发于松涛2003年10月 二、需求规约2.1业务描述该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。我们在这里主要从技术可行性、经济可行性和操作可行性三方面进行分析。2.1.1经济可行性本系统其他应用软件、硬件系统也易于获得.因此,开发成本较低。而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。所以,从经济的角度来看,该系统可行。2.1.2技术可行性开发工具:VS2005 数据库环境:SQL Server 2008系统环境:Microsoft Windows 2000或以上版本。系统实现依靠相对熟悉的c语言和SQL S

8、erver2008数据库系统,其基本操作实质还是对数据库进行添加、删除、查找等操作。2.1.3操作可行性系统采用菜单式,实现用户与数据库的交互,界面简洁友好,操作方便。2.1.4 业务流程图经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出旅客信息、订票信息和取票通知的具体需求。图2.1 旅客购票流程图 调查用户需求 售票处需求功能:旅客持个人证件去火车站购买火车票。希望能通过旅客姓名查到该旅客的列车车次并记录旅客基本信息。统计功能:按火车票统计买票人数按姓名统计火车票数旅客购票需求交费功能:交费退费 取票需求通知功能:通知旅客取票统计功能:统计通过验证的人数统计可

9、以取票的人统计未通过验证的人数查询功能:购票旅客查询 购票旅客姓名 购票旅客身份证号 购票旅客订单号 列车车次信息需求查询功能:车次始发站终点站始发时间2.1.5系统框架在调查完了用户需求之后,就要开始分析用户需求。在此,我们们采用自顶向下的结构化分析方法(SA方法)。首先,定义全局概念结构的框架,如图2.2所示。图2.2火车票预定系统总框架图各子系统需要进一步细化。旅客信息系统为例进一步细化,如图2.3所示。图2.3旅客信息系统细化以其中的查询旅客信息功能为例进一步细化,如图2.4所示。图2.4查询旅客信息功能图2.5列车车次信息系统细化 图2.6取票通知系统细化 图2.7旅客信息系统能查询

10、到的内容 图2.8火车票信息系统能查询到的内容图2.9退票信息系统细化将所有子系统全部细化。将所有用户需求分析完毕之后,就要开始构造数据字典了。经分析之后,本系统要用到五个基本表:退票信息表,旅客信息表,列车车次信息表,取票通知信息系统,列车座位信息表。数据结构定义如表2.1所示。表2.1 数据结构定义数据结构名含义说明组成退票信息定义了退票旅客的有关信息旅客姓名,身份证号,订单号,电话号旅客定义了旅客有关信息旅客姓名,身份证号,性别,工作单位,电话号列车车次信息表定义了车次的有关信息车次号,始发地,目的地,始发时间取票通知单定义了取票通知相关有关信息旅客姓名,取票时间,列车车次,座位号,火车

11、票类型列车座位信息表定义了列车座位有关信息列车号,座位号,座位信息,火车票类型2.2 需求分析需求分析是软件设计的一个重要的环节。本阶段对订票系统的应用情况作全面调查,以确定系统目标,并对系统所需要的基础数据以及数据处理要求进行分析,从而确定用户的需求。用户对系统的需求我们从以下几方面进行分析。2.2.1功能需求本网上订票系统应该具备如下功能:1.查询分为对车次信息的查询和客户对已订车票信息的查询。要求:1)对车次的查询,可以按照发车车次进行查询; 2)车次信息包括:车号、出发地、目的地、发车日期、开出时刻、票价。3)座位类型设定。2.订票通过查询系统,客户根据自己的需求找到满意的车次,再输入

12、个人信息后直接通过网上订票确定已预订选中的车票。要求:订票记录应包括:会员名、车号、发车日期、订购日期、订购票数、总价。3.退票可退票,通过查询系统,客户可以自己的名字找到自己的订票信息,通过退票模块退去已购车票。2.2.2数据需求信息需求,即在系统中需要处理哪些数据。根据对火车站网上订票系统的分析,本系统的信息需求如表2-1所示。表2-1信息输入输出 信息输入信息处理信息输出用户输入所需车次检索系统数据库符合用户需求的车次及相关信息用户输入个人信息及所需订购的车票信息更新系统中的订票信息,将新信息存入系统数据库操作反馈(如订票成功)用户输入自己的名字、身份证号;或交易的订单号检索系统数据库符

13、合用户需求的订票信息用户输入自己的名字检索系统数据库以得到订票记录,删除用户请求的订票记录,更新系统数据库操作反馈(如退票成功等)2.2.3性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。1.准确性和及时性系统处理的准确性和及时性是系统的必要性能。系统应能及时而且准确的根据用户权限及所输入的信息做出响应。由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。2.易用性本系统是直接面

14、对用户的,而用户往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。3.安全性网上订票系统中涉及到的数据是客运公司相当重要的信息,系统要保证用户的权限,对于车次等信息用户只享有查询服务,不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全管理、以及系统意外崩溃时数据的恢复等工作。同时系统还要保证对数据库进行及时更新,保证数据一致性。三、数据库环境说明数据库实例数据库系统数据库部署环境数据库设计工具数据库存放位置说明火车票订票管理SQL Server2008W

15、indow 7SQL Server存放位置,绝对路径/相对路径D:/Program完整的车票管理流程四、数据库的命名规则4.1 数据库对象命名规则数据库对象命名规则备注表Tbl_功能描述字符串例如:Checi车次信息表视图View_功能描述字符串例如:Checi车次信息视图存储过程Procedure_功能描述字符串例如:dbo.kh存储过程 触发器Insert_功能描述字符串例如:Insert_Or_Update_Sal_1更改库数据库4.2 数据项编码规则 数据项命名规则数据类型长度范围备注C_ci(G/K/T/D)+号码varchar10位车次号T_seat1-800int10位座位号C_

16、goTime年月日+时:分:秒varchar10位出发时间C_fanhuiadd地名varchar10位目的地K_name名字varchar10位客户姓名Y_name名字varchar10位业务员姓名K_id数字varchar16位身份证号码Y_tel数字varchar11位电话号码T_price数字float10位车票价格T_type一等座/二等座varchar10位座位类型五、逻辑设计(1)关系模式: 车次信息(车次编号、出发地、目的地、出发时间、到站时间、火车类型、里程数,座位数) 车票信息(座位号、价格、当前预售状态、座位类型) 客户(姓名、联系电话、身份证号码) 业务员(姓名、工号)

17、(2)关系图: 主键 主键 1主键 n 1 n n 1 主键 图5.1系统总体结构E-R图图5.2逻辑关系图六、物理设计6.1 表汇总表名功能说明车次表存储车次的相关信息及其数据类型以及相关的约束车票信息表存储车票的相关信息及其数据类型以及相关的约束客户表存储客户的相关信息及其数据类型以及相关的约束业务员表存储业务员的相关信息及其数据类型以及相关的约束6.2 表的基本信息车次信息表表名车次信息表数据库用户主键车次号其他排序字段无索引字段车次号序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1t_noVARCHAR(10)NY高车次号/主键2t_departur

18、eVARCHAR(10)NN中出发地3t_destinationVARCHAR(10)NN中目的地4t_goTimeDATETIMENN中出发时间5t_returnTimeDATETIMENN中到站时间6t_trainTypeVARCHAR(10)YN低火车类型7mileageNumberINTNN低里程数8seatNumberINTNN低座位数sql脚本CREATE TABLE train_number(t_no VARCHAR(10) PRIMARY KEY, -车次编号(主键)t_departure VARCHAR(10) NOT NULL, -出发地t_destination VARC

19、HAR(10) NOT NULL, -目的地t_goTime DATETIME NOT NULL, -出发时间t_returnTime DATETIME NOT NULL, -到站时间t_trainType VARCHAR(10) CHECK(t_trainType IN(高铁,普快,特快,动车), -火车类型t_mileageNumber INT NOT NULL, -里程数t_seatNumber INT NOT NULL -座位数)备注车票信息表表名车票信息表数据库用户主键车次编号其他排序字段无索引字段车次编号序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/

20、说明1t_noVARCHAR(10)NY高车次编号/主键2ti_seatNoVARCHAR(10)NN中座位号3ti_seatPriceFLOAT(2)NN中车票价格4ti_saleStatusVARCHAR(10)NN中销售状态5ti_seatTypeVARCHAR(10)NN中座位类型sql脚本CREATE TABLE train_ticket(t_no VARCHAR(10), -车次编号ti_seatNo VARCHAR(10), -座位号ti_seatPrice FLOAT(2) NOT NULL, -车票价格ti_saleStatus VARCHAR(10) CHECK(ti_sa

21、leStatus IN(待售,已售), -销售状态ti_seatType VARCHAR(10) CHECK(ti_seatType IN(一等座,二等座,三等座), -座位类型PRIMARY KEY(ti_seatNo,t_no), -主键约束FOREIGN KEY(t_no) REFERENCES train_number(t_no) -外键约束备注客户信息表表名客户信息表数据库用户主键身份证号码其他排序字段无索引字段身份证号码序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1u_IDVARCHAR(20)NY高身份证号码/主键2u_nameVARCHAR

22、(10)NN中姓名3u_telephoneVARCHAR(10)NN中电话号码sql脚本CREATE TABLE Users(u_ID VARCHAR(20) PRIMARY KEY, -身份证号码u_name VARCHAR(10) NOT NULL, -姓名u_telphone VARCHAR(10) NOT NULL, -电话号码t_no VARCHAR(10) NOT NULL, -车次号ti_seatNo VARCHAR(10) NOT NULL, -座位号FOREIGN KEY(ti_seatNo,t_no) REFERENCES train_ticket(ti_seatNo,t_

23、no) -外键约束-FOREIGN KEY() REFERENCES train_ticket() -外键约束备注业务员信息表表名业务员信息表数据库用户主键编号其他排序字段无索引字段编号序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1s_noVARCHAR(20)NY高编号/主键2s_nameVARCHAR(20)NN中业务员姓名sql脚本CREATE TABLE saleMan(s_no VARCHAR(20) PRIMARY KEY, -主键约束s_name VARCHAR(20) NOT NULL, -业务员姓名ti_seatNo VARCHAR(10

24、) NOT NULL, -座位号t_no VARCHAR(10) NOT NULL, -座位号FOREIGN KEY(ti_seatNo,t_no) REFERENCES train_ticket(ti_seatNo,t_no) -外键约束)备注6.3 视图的设计图6.3.1 车票信息视图图6.3.1 售票信息视图6.4存储过程、函数及触发器的设计触发器1:修正票价和票价对应的座位类型insert_or_upadte_sal_2USE 火车票GO/* Object: Trigger dbo.insert_or_upadte_sal_2 Script Date: 05/28/2016 06:22

25、:30 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER trigger dbo.insert_or_upadte_sal_2on dbo.Che_ticketfor insertasbegin DECLARE ti_seatNo VARCHAR(10),ti_seatPrice FLOAT(2),ti_seatType VARCHAR(10),t_no varchar(10)SELECT ti_seatNo=T_seat,ti_seatPrice=T_price,ti_seatType=T_type,t_no=C_ci FROM ins

26、erted IF(ti_seatNo LIKE A%) UPDATE Che_ticket SET T_price=200 IF(ti_seatNo LIKE A%) UPDATE Che_ticket SET T_price=一等座 IF(ti_seatNo LIKE B%) UPDATE Che_ticket SET T_price=100 IF(ti_seatNo LIKE B%) UPDATE Che_ticket SET T_price=二等座 IF(ti_seatNo LIKE A% AND t_no LIKE G-%) UPDATE Che_ticket SET T_price=

27、900 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE B% AND t_no LIKE G-%) UPDATE Che_ticket SET T_price=600 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE C% AND t_no LIKE G-%) UPDATE Che_ticket SET T_price=300 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE A% AND t_no LIKE K-%) -K是普快 UPDATE Che_

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

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