CTGU实验6_1-创建能否借书存储过程
任务描述
1、 在图书管理数据库中创建一个存储过程P_IsLoan,在用户借书之前,判断该用户能否借书。用户借阅证号和借阅图书的书号作为输入参数,输出参数vflag为整数,有以下几种状态值:
(1)vflag为0,表示“该用户可以借阅此书”;
(2)vflag为1,表示此书已经预约或已经借出或不出借;
(3)vflag为2,表示此书不对该类用户出借,每种图书只对允许的用户类别出借(具体参见上方Books表的字段说明);
(4)vflag为3,表示“已达到借书上限”;
(5)vflag为4,表示“此用户存在超期未还图书”。
/* 1、 在图书管理数据库中创建一个存储过程P_IsLoan,在用户借书之前,判断该用户能否借书。用户借阅证号和借阅图书的书号作为输入参数,
输出参数vflag为整数,有以下几种状态值:(1)vflag为0,表示“该用户可以借阅此书”;(2)vflag为1,表示此书已经预约或已经借出或不出借;(3)vflag为2,表示此书不对该类用户出借,每种图书只对允许的用户类别出借(具体参见上方Books表的字段说明);(4)vflag为3,表示“已达到借书上限”;(5)vflag为4,表示“此用户存在超期未还图书”。*/use library;
DROP PROCEDURE IF EXISTS P_IsLoan;
delimiter //create procedure P_IsLoan(vloanno varchar(16),vbookno char(9),out vflag tinyint)
begin
######### Begin #########declare bstatus char(1);declare ctr_no tinyint;declare clNo tinyint;declare cnt tinyint;declare canBro tinyint;declare term tinyint;declare difday tinyint; select Users.classNo into clNo from Users where loanNo = vloanno; select Class_User.term into term from Class_User where classNo = clNo; select max(datediff(now(), borrowDate)) into difday from Loan where Loan.loanNo = vloanno;select ceilingNum into canBro from Class_User where Class_User.classNo = clNo;select count(*) into cnt from Loan where loanNo = vloanno;select Books.bstatus into bstatus from Books where vbookno = bookNo;select Books.ctr_no into ctr_no from Books where vbookno = bookNo; if bstatus = '0' then set vflag = 0; end if;if bstatus = '1' || bstatus = '2' then set vflag = 1; end if;if (ctr_no | clNo) != ctr_no then set vflag = 2;end if; if difday > term then set vflag = 4;end if;if cnt >= canBro then set vflag = 3;end if;######### End #########
end//
delimiter ;
CTGU实验6_1-创建能否借书存储过程相关推荐
- MySQL实验七创建存储过程和函数
这里写自定义目录标题 一 实验目的 二 实验平台 三 实验内容和要求 3.1 创建存储过程 3.2 查看存储过程 3.3 修改存储过程 3.4 删除存储过程 3.5 创建函数 3.6 查看函数 3.7 ...
- java学习之借书系统
实现的图书借阅系统要处理用户输入的非法参数,并引导用户正确使用 测试结果: 主要目的就是练习异常处理中的Exception类的使用 使用的相关语法 1 try{ 2 //可能产生异常的代码块 3 }c ...
- oracle语句借书,Oracle SQL题目及其解答(借书卡、图书、借书记录)
题目来源于:http://blog.csdn.net/lifetragedy/article/details/10305735 /*下面是一个基于图书系统的15道SQL问答,供大家参考 问题描述: 本 ...
- Django 图书借书系统
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.Django是什么? 二.django安装 1.安装 2.需要的pip list 安装 三.django 建立图书 ...
- 数据库实验2 创建数据表修改数据表和删除数据表
实验2 创建数据表修改数据表和删除数据表 实验类型:●验证性实验 ○综合性实验 ○设计性实验 实验目的: (1)了解数据表的结构特点. (2)掌握表中列定义时所用到的各种数据类型. (3) ...
- mysql使用事务实现图书馆借书操作
文章目录 一.实例 二. 相关表 1.创建表 2.插入表记录 三.事务处理 一.实例 使用事务,完成图书馆借阅图书的操作. 1.向借阅信息表插入借阅记录 2.更新图书信息表的库存 3.更新读者信息表的 ...
- 借书场景领域建模浅析
关于借书场景的领域建模,我从以下几个方面进行分析: 分析模型静态结构 我分析一个领域模型的静态结构的思路一般是:先找出我们需要关心的对象,对于借书这个场景,我们关心的有: 1. Account(账号) ...
- ArcGIS基础实验操作100例--实验96创建地形剖面图
本实验专栏参考自汤国安教授<地理信息系统基础实验操作100例>一书 实验平台:ArcGIS 10.6 实验数据:请访问实验1(传送门) 空间分析篇--实验96 创建地形剖面图 目录 一.实 ...
- book类 借书 java_java学习之借书系统
实现的图书借阅系统要处理用户输入的非法参数,并引导用户正确使用 测试结果: 主要目的就是练习异常处理中的Exception类的使用 使用的相关语法 1 try{2 //可能产生异常的代码块 3 }ca ...
- Android-UI 借书界面
文章目录 案例说明 实现 案例视频 UI布局 UI效果 activity_main.xml文件代码 tostrings.xml文件代码 书本类和用户类的定义 书本类Book 用户类Person 功能实 ...
最新文章
- 算法设计与分析第5章 回溯法(二)【回溯法应用】
- python读取配置文件存在某配置_Python读取配置文件(config.ini)以及写入配置文件
- 计算字符串t在字符串s中出现的次数(KMP)
- 设计模式六:适配器模式
- JS调用打印机打印Web页面
- 判断大小简单算法_JVM GC算法
- 用iptables实现G1手机cmwap代理上http网站[转]
- 分析报告生产器使用问题
- 六维空间向量表示法公式笔记
- I210 网卡设定 force link mode 并关闭 EEE mode
- since作为连词引导时间状语从句的用法
- 2013,我的创业记忆片段
- 白泽六足机器人_ros_v1——单腿RVIZ仿真
- npm install --save 、--save-dev 、-D、-S的区别详细解说
- Java判断本周属于该年的第几周
- 第一章:电商及商品系统概述
- 机器视觉算法与应用读书笔记(算法)
- 两个向量之间的夹角公式_Python 计算任意两向量之间的夹角方法
- 怎么查看qq登陆记录
- java签到功能的实现_java实现的签到系统