




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
长 沙 学 院 课程设计说明书 题目火车票预定管理系统 系(部)数学与计算机科学系 专业(班级) 姓名 学号 指导教师 起止日期 2016.05.1605.27 课程设计任务书 课程名称:数据库系统原理课程设计课程名称:数据库系统原理课程设计 题目:火车票预订管理系统题目:火车票预订管理系统 1、某铁路局火车票预订管理系统需要如下信息: 车次信息:车次编号、出发地、目的地、出发时间、到站时间、火车类型、里程数,座 位数等。 车票信息:座位号、价格、当前预售状态、座位类型等。 客户:姓名、联系电话、身份证号码等。 业务员:姓名、工号。 其业务规则描述如下: 一个客户可以预订(退订)多张火车票,但一张火车票只能被一个客户预订(退订) ;一 个业务员能销售多张车票,但一张车票只被一个业务员销售。一辆列车包含多张车票, 但一张车票只属于一辆列车。 2、系统功能的基本要求: 按照一定条件查询、统计符合条件的火车、车票、客户信息等。例如火车车次查询、时 刻表查询、剩余座位数、同一路线可选火车信息、客户购买历史等,能够在车票售出时 更新可用火车票数,模拟完成火车票订票、退订业务。 各阶段具体要求:各阶段具体要求: 1、需求分析阶段 定义数据项的含义和取值 定义目标系统的数据流 2、概念结构设计阶段 画出实体模型 E-R 图 3、逻辑结构设计阶段 将实体模型转化为关系模型 给出每个关系的主关键字和函数依赖集 分析你所设计的关系数据库模式是否属于 3NF 4、物理设计阶段 确定所有字段的名称、类型、宽度、小数位数及完整性约束 确定数据库及表的名称及其组成 确定索引文件和索引关键字 5、数据库安全及维护设计阶段 设计一个适合的数据库安全策略(用户身份认证、访问权限、视图) 为了实现复杂的数据完整性约束,设计适当的触发器 1 设计一个适合的数据库备份策略 6、实施阶段 要求所有操作必须在查询分析器中用 SQL 语句或系统存储过程完成。 对于学有余力的同学,可以使用嵌入式 SQL 语句结合高级语言开发完成。 设计工作量:设计工作量: (1)软件设计:完成问题陈述中所提到的所有需求功能。 (2)论文:要求撰写不少于 3000 个文字的电子文档,详细说明各阶段具体要求。 工作计划:工作计划: 安排两周时间进行课程设计,软件开发步骤如下,第一周完成 14,第二周完成 58, 论文同步进行; 1)选定题目 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 份) 2 长沙学院课程设计论文(每学生 1 份) 长沙学院课程设计鉴定表(每学生 1 份) 指导教师签名: 日期: 教研室主任签名: 日期: 系主任签名: 日期: 3 长沙学院课程设计鉴定表 姓名 学号 专业软件工程班级 设计题目火车票预订管理系统指导教师 指导教师意见: 评定等级: 教师签名: 日期: 答辩小组意见: 评定等级: 答辩小组长签名: 日期: 教研室意见: 教研室主任签名: 日期: 系(部)意见: 系主任签名: 日期: 说明 课程设计成绩分“优秀” 、 “良好” 、 “及格” 、 “不及格”四类; 4 目 录 一、引言一、引言 .1 1.1编写目的.1 1.2参考资料.1 二、二、需求规约需求规约.2 2.1业务描述.2 2.1.1 经济可行性 .2 2.1.2 技术可行性 .2 2.1.3 操作可行性 .2 2.1.4 业务流程图 .2 2.1.5 系统框架 .4 2.2 需求分析.7 2.2.1 功能需求 .7 2.2.2 数据需求 .8 2.2.3 性能需求 .8 三、三、数据库环境说明数据库环境说明.9 四、数据库的命名规则四、数据库的命名规则 .9 4.1 数据库对象命名规则.9 4.2 数据项编码规则.9 五、逻辑设计五、逻辑设计 .10 六、物理设计六、物理设计 .11 6.1 表汇总.11 6.2 表的基本信息.12 6.3 视图的设计.15 6.4 存储过程、函数及触发器的设计.16 七、安全性设计七、安全性设计 .23 7.1 防止用户直接操作数据库的方法.23 7.2 用户帐号密码的加密方法.24 7.3 角色与权限.24 八、数据库管理与维护说明八、数据库管理与维护说明 .24 5 一、引言一、引言 1.1编写目的编写目的 随着时代的发展,计算机软件和系统的成熟,火车票的正当管理成为一个影响铁 路部门正常运营的因素之一,而建立火车票订票管理系统是一个很好的解决办法。 作为计算机应用的一部分,使用计算机对火车票信息进行管理,具有手工管理所 无法比拟的优点,例如检索迅速、查找方便、可靠性高、存储量大、保密性好等,这 些优点能够极大的提高火车票信息管理的效率,也正体现了火车票的科学化正规化管 理 现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科 学的保存大量的数据,以便能更好的利用这些数据资源。本论文就是通过 SQL 的整 体设计把数据库与应用程序相连接,做成一个火车票的订票管理系统,使得火车票管 理员能够有效的管理车次信息、旅客信息、退票信息等。同时用户可以通过查询到相 关的火车票信息,选择是否适合自己,也可以在网上直接订票、退票,省时省力 。 1.2参考资料参考资料 资料名称作者文件编号、版本 数据库系统概论王珊、萨师煊2006 年 5 月第 4 版 现代软件工程孙涌2003 年 8 月第 1-246 版 精通 SQL server 2000 数据库管理与开发 于松涛2003 年 10 月 6 二、二、需求规约需求规约 2.1 业务描述业务描述 该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。我们在这里主要从 技术可行性、经济可行性和操作可行性三方面进行分析。 2.1.1 经济可行性 本系统其他应用软件、硬件系统也易于获得.因此,开发成本较低。而引进使用本系统后,与传统方 式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。所以,从经济 的角度来看,该系统可行。 2.1.2 技术可行性 开发工具:VS2005 数据库环境:SQL Server 2008 系统环境:Microsoft Windows 2000 或以上版本。 系统实现依靠相对熟悉的 c 语言和 SQL Server2008 数据库系统,其基本操作实质还是对数据库进 行添加、删除、查找等操作。 2.1.3 操作可行性 系统采用菜单式,实现用户与数据库的交互,界面简洁友好,操作方便。 2.1.4 业务流程图 经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出旅客信息、 订票信息和取票通知的具体需求。 7 去火车站购票售票处核查相 关信息 去售票处购票 打印火车票 确认列车车次 检查个人身份 图 2.1 旅客购票流程图 调查用户需求 售票处需求 功能:旅客持个人证件去火车站购买火车票。希望能通过旅客姓名查到该旅客的列车车次 并记录旅客基本信息。 统计功能: 按火车票统计买票人数 按姓名统计火车票数 旅客购票需求 交费功能: 交费 退费 取票需求 通知功能: 通知旅客取票 统计功能: 统计通过验证的人数 统计可以取票的人 统计未通过验证的人数 查询功能: 购票旅客查询 购票旅客姓名 购票旅客身份证号 8 购票旅客订单号 列车车次信息需求 查询功能: 车次 始发站 终点站 始发时间 2.1.5 系统框架 在调查完了用户需求之后,就要开始分析用户需求。在此,我们们采用自顶向下的结构化分析方 法(SA 方法) 。首先,定义全局概念结构的框架,如图 2.2 所示。 火车票订票系统 旅客信息系统退票信息系统取票通知系统列车车次信息 系统 图 2.2 火车票预定系统总框架图 各子系统需要进一步细化。旅客信息系统为例进一步细化,如图 2.3 所示。 旅客信息系统 查询旅客信息统计人数 图 2.3 旅客信息系统细化 9 以其中的查询旅客信息功能为例进一步细化,如图 2.4 所示。 查询旅客信息 旅客订单号身份证号旅客电话号旅客姓名 图 2.4 查询旅客信息功能 图 2.5 列车 车次信 息系统 细化 取票通知系统 火车票信息系统旅客信息系统 图 2.6 取票通知系统细化 列车车次信息系统 列车车次号始发时间终点站始发站 10 旅客信息系统 取票时间旅客姓名 图 2.7 旅客信息系统能查询到的内容 火车票信息系统 火车票类型座位号列车车次 图 2.8 火车票信息系统能查询到的内容 图 2.9 退票信息系统细化 退票信息系统 订单号身份证号旅客电话号码旅客姓名 11 将所有子系统全部细化。将所有用户需求分析完毕之后,就要开始构造数据字典了。经分析之后, 本系统要用到五个基本表:退票信息表,旅客信息表,列车车次信息表,取票通知信息系统,列车座 位信息表。数据结构定义如表 2.1 所示。 表 2.1 数据结构定义 数据结构名含义说明组成 退票信息定义了退票旅客的有关信息旅客姓名,身份证号,订单号,电话号 旅客定义了旅客有关信息 旅客姓名,身份证号,性别, 工作单位,电话号 列车车次信息表 定义了车次 的有关信息 车次号,始发地,目的地,始发时间 取票通知单定义了取票通知相关有关信息 旅客姓名,取票时间,列车车次,座位号, 火车票类型 列车座位信息表定义了列车座位有关信息列车号,座位号,座位信息,火车票类型 2.2 需求分析需求分析 需求分析是软件设计的一个重要的环节。本阶段对订票系统的应用情况作全面调查,以确定系统 目标,并对系统所需要的基础数据以及数据处理要求进行分析,从而确定用户的需求。用户对系统的 需求我们从以下几方面进行分析。 2.2.1 功能需求 本网上订票系统应该具备如下功能: 1.查询 分为对车次信息的查询和客户对已订车票信息的查询。要求: 1)对车次的查询,可以按照发车车次进行查询; 2)车次信息包括:车号、出发地、目的地、发 车日期、开出时刻、票价。 3)座位类型设定。 2.订票 通过查询系统,客户根据自己的需求找到满意的车次,再输入个人信息后直接通过网上订票确定 已预订选中的车票。要求: 订票记录应包括:会员名、车号、发车日期、订购日期、订购票数、总价。 3.退票 可退票,通过查询系统,客户可以自己的名字找到自己的订票信息,通过退票模块退去已购车票。 12 2.2.2 数据需求 信息需求,即在系统中需要处理哪些数据。根据对火车站网上订票系统的分析,本系统的信息需 求如表 2-1 所示。 表 2-1 信息输入输出 信息输入信息处理信息输出 用户输入所需车次检索系统数据库符合用户需求的车次及相关 信息 用户输入个人信息及所需订 购的车票信息 更新系统中的订票信息, 将新信息存入系统数据库 操作反馈(如订票成功) 用户输入自己的名字、身份 证号;或交易的订单号 检索系统数据库符合用户需求的订票信息 用户输入自己的名字检索系统数据库以得到订票 记录,删除用户请求的订票 记录,更新系统数据库 操作反馈(如退票成功等) 2.2.3 性能需求 为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。 1.准确性和及时性 系统处理的准确性和及时性是系统的必要性能。系统应能及时而且准确的根据用户权限及所输入 的信息做出响应。由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。作为系统的很多 数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的 成败。在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。 2.易用性 本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。这就要求系统能够提供良好的 用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信 息的界面,从而保证系统的易用性。 3.安全性 网上订票系统中涉及到的数据是客运公司相当重要的信息,系统要保证用户的权限,对于车次等信息 用户只享有查询服务,不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全 管理、以及系统意外崩溃时数据的恢复等工作。同时系统还要保证对数据库进行及时更新,保证数据 一致性。 13 三、三、数据库环境说明数据库环境说明 数据库实 例 数据库系 统 数据库部 署环境 数据库设 计工具 数据库存放位 置 说明 火车票订 票管理 SQL Server2008Window 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)+号码 varchar 10 位车次号 T_seat 1-800int 10 位座位号 C_goTime 年月日+时:分: 秒 varchar 10 位出发时间 C_fanhuiadd 地名 varchar 10 位目的地 K_name 名字 varchar 10 位客户姓名 Y_name 名字 varchar 10 位业务员姓名 K_id 数字 varchar 16 位身份证号码 Y_tel 数字 varchar 11 位电话号码 T_price 数字 float 10 位车票价格 T_type 一等座/二等座 varchar 10 位座位类型 14 五、逻辑设计五、逻辑设计 (1)关系模式: 车次信息(车次编号、出发地、目的地、出发时间、到站时间、火车类型、里程数,座位数) 车票信息(座位号、价格、当前预售状态、座位类型) 客户(姓名、联系电话、身份证号码) 业务员(姓名、工号) (2)关系图: 主键 主键 1 主键 n1 n n 1 主键 图 5.1 系统总体结构 E-R 图 车票信息 电话 身份证() 姓名 订票/退票 车次信息 车次编号出发地 出发时间 到站时间 火车类型 里程数 座位数 座位号 价格 当前销 售状态 座位类 型 客户 业务员 工号 姓名 包含 售票 15 图 5.2 逻辑关系图 六、物理设计六、物理设计 6.1 表汇总表汇总 表名功能说明 车次表存储车次的相关信息及其数据类型以及相关的约束 车票信息表存储车票的相关信息及其数据类型以及相关的约束 客户表存储客户的相关信息及其数据类型以及相关的约束 业务员表存储业务员的相关信息及其数据类型以及相关的约束 16 6.26.2 表的基本信息 车次信息表 表名车次信息表 数据库用户 主键车次号 其他排序字段无 索引字段车次号 序号字段名称数据类型 (精度范围) 允许为 空 Y/N 唯一 Y/N 区别度默认值约束条件/说明 1t_noVARCHAR(10)NY 高车次号/主键 2t_departur e VARCHAR(10)NN 中出发地 3t_destinat ion VARCHAR(10)NN 中目的地 4t_goTimeDATETIMENN 中出发时间 5t_returnTi me DATETIMENN 中到站时间 6t_trainTyp e VARCHAR(10)YN 低火车类型 7mileageNum ber INTNN 低里程数 8seatNumberINTNN 低座位数 sql 脚本CREATE TABLE train_number ( t_no VARCHAR(10) PRIMARY KEY, -车次编号(主键) t_departure VARCHAR(10) NOT NULL, -出发地 t_destination VARCHAR(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 -座位数 ) 备注 17 车票信息表 表名车票信息表 数据库用户 主键车次编号 其他排序字段无 索引字段车次编号 序号字段名称数据类型 (精度范围) 允许为 空 Y/N 唯一 Y/N 区别度默认值约束条件/说明 1t_noVARCHAR(10)NY 高车次编号/主键 2ti_seatNoVARCHAR(10)NN 中座位号 3ti_seatPri ce FLOAT(2)NN 中车票价格 4ti_saleSta tus VARCHAR(10)NN 中销售状态 5ti_seatTyp e VARCHAR(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_saleStatus 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(10)NN 中姓名 3u_telephon e VARCHAR(10)NN 中电话号码 18 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_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) NOT NULL, -座位号 t_no VARCHAR(10) NOT NULL, -座位号 FOREIGN KEY(ti_seatNo,t_no) REFERENCES train_ticket(ti_seatNo,t_no) -外键约束 ) 备注 6.36.3 视图的设计视图的设计 图 6.3.1 车票信息视图 图 6.3.1 售票信息视图 19 6.46.4 存储过程、函数及触发器的设计存储过程、函数及触发器的设计 触发器 1:修正票价和票价对应的座位类型insert_or_upadte_sal_2 USE 火车票 GO /* Object: Trigger dbo.insert_or_upadte_sal_2 Script Date: 05/28/2016 06:22:30 */ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER trigger dbo.insert_or_upadte_sal_2 on dbo.Che_ticket for insert as begin 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 inserted 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=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_ticket SET T_price=400 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE B% AND t_no LIKE K-%) UPDATE Che_ticket SET T_price=200 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE C% AND t_no LIKE K-%) UPDATE Che_ticket SET T_price=100 WHERE ti_seatNo=T_seat AND t_no=C_ci 20 IF(ti_seatNo LIKE A% AND t_no LIKE T-%) UPDATE Che_ticket SET T_price=600 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE B% AND t_no LIKE T-%) UPDATE Che_ticket SET T_price=400 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE C% AND t_no LIKE T-%) UPDATE Che_ticket SET T_price=200 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE A% AND t_no LIKE D-%) UPDATE Che_ticket SET T_price=900 WHERE ti_seatNo=T_seat AND t_no=C_ci IF(ti_seatNo LIKE B% AND t_no LIKE D-%) 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 D-%) UPDATE Che_ticket SET T_price=300 WHERE ti_seatNo=T_seat AND t_no=C_ci end 图 触发器 2:火车类型和对应的座位数剩余Insert_Or_Update_Sal_1 USE 火车票 GO /* Object: Trigger dbo.Insert_Or_Update_Sal_1 Script Date: 05/28/2016 07:11:02 */ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER TRIGGER dbo.Insert_Or_Update_Sal_1 ON dbo.Checi FOR INSERT 21 AS DECLARE t_no VARCHAR(10),t_seatNumber INT,t_trainType VARCHAR(10) SELECT t_no=C_ci,t_seatNumber=C_seatNumber,t_trainType=C_type FROM inserted -第一部分 IF(t_no LIKE G-%) UPDATE Checi SET C_type=高铁 ,C_seatNumber=200 WHERE t_no=C_ci IF(t_no LIKE T-%) UPDATE Checi SET C_type=特快 ,C_seatNumber=200 WHERE t_no=C_ci IF(t_no LIKE D-%) UPDATE Checi SET C_type=动车 ,C_seatNumber=300 WHERE t_no=C_ci IF(t_no LIKE K-%) UPDATE Checi SET C_type=普快 ,C_seatNumber=400 WHERE t_no=C_ci 存储过程 1:客户买票 USE 火车票 GO /* Object: StoredProcedure dbo.kh Script Date: 05/28/2016 07:12:03 */ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROC dbo.kh 22 K_id VARCHAR(20), K_name VARCHAR(10), K_tel VARCHAR(10), C_ci VARCHAR(10), T_seat VARCHAR(10) AS IF C_ci IS NULL BEGIN ROLLBACK; RETURN; END IF T_seat IS NULL BEGIN ROLLBACK; RETURN; END IF K_id IS NULL BEGIN ROLLBACK; RETURN; END IF K_name IS NULL BEGIN ROLLBACK; RETURN; END IF K_tel IS NULL BEGIN ROLLBACK; RETURN; END ELSE BEGIN UPDATE Che_ticket SET T_sale=已售 WHERE C_ci=C_ci AND T_seat=T_seat UPDATE Checi SET C_seatNumber=C_seatNumber-1 WHERE C_ci=C_ci INSERT INTO Kehu(K_id,K_name,K_tel,T_seat,C_ci) VALUES(K_id,K_name,K_tel,T_seat,C_ci) 23 DELETE FROM Yewuyuan WHERE C_ci=C_ci AND T_seat=T_seat PRINT 买票成功! END 图6.4.1存储过程买票的实现 存储过程 2:业务员退票 USE 火车票 GO /* Object: StoredProcedure dbo.ywy Script Date: 05/28/2016 07:33:15 */ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROC dbo.ywy y_id varchar(10), y_name varchar(10), C_ci varchar(10), T_seat varchar(10), Y_tel varchar(10) as if y_name is null begin rollback; return; end if c_ci is null begin rollback; 24 return; end if y_id is null begin rollback; return; end if T_seat is null begin rollback; return; end else begin update Checi set T_sale=待售 where C_ci=C_ci and T_seat=T_seat update Checi set C_seatNumber=C_seatNumber+1 where C_ci=C_ci and C_seatNumber1000 delete from Kehu where C_ci=C_ci and T_seat=T_seat insert into Yewuyuan(Y_id,Y_name,Y_tel,T_seat,C_ci) values(Y_id,Y_name,Y_tel,T_seat,C_ci) print退票成功 end 25 图6.4.1存储过程退票的实现 存储过程:查票信息 USE 火车票 GO /* Object: StoredProcedure dbo.piao Script Da
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药品贴牌生产管理办法
- 营区监控存储管理办法
- 营运客车停放管理办法
- 襄阳药品发放管理办法
- 西安条码追溯管理办法
- 设计资质人员管理办法
- 证券投资基金管理办法
- 证券资金使用管理办法
- 财政社保资金管理办法
- 财政衔接资金管理办法
- 2025年绥化市中考化学试题卷(含答案解析)
- 危重病人观察和护理要点
- GB/T 45719-2025半导体器件金属氧化物半导体(MOS)晶体管的热载流子试验
- 宝妈日常心理护理
- 2025年社会学概论测试题含答案(附解析)
- 2025-2030年环境工程产业深度调研及发展趋势与投资战略研究报告
- 2025年事业单位公开招聘考试(E类)《综合应用能力西医临床》试卷真题及完整解析
- 保险公司保单管理制度
- 2025年中国AI翻译行业市场全景分析及前景机遇研判报告
- 2025-2030中国酶联免疫吸附测定(ELISA)行业市场发展趋势与前景展望战略研究报告
- 2025年内蒙古众达人力资源公司招聘题库带答案分析
评论
0/150
提交评论