MYSQL存储过程-练习1

创建book表

CREATE TABLE `book` (
`boodid` int unsigned NOT NULL AUTO_INCREMENT,
`bookname` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
`author` varchar(30) COLLATE utf8mb4_general_ci NOT NULL,
`info` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
`year_publication` year NOT NULL,
`num` smallint DEFAULT NULL,
PRIMARY KEY (`boodid`),
KEY `idx` (`year_publication`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='书本信息表'

创建存储过程

DELIMITER $
CREATE PROCEDURE insert_book10()
BEGIN
DECLARE i INT;
DECLARE bname VARCHAR(200);
SET i = 1;
WHILE i <=5 DO
IF i = 1 THEN
SET bname=CONCAT("HARRY POTER-魔法石",i);
ELSEIF i = 2 THEN
SET bname=CONCAT("HARRY POTER-密室",i);
ELSEIF i = 3 THEN
SET bname=CONCAT("HARRY POTER-凤凰社",i);
ELSEIF i = 4 THEN
SET bname=CONCAT("HARRY POTER-火焰杯",i);
ELSE
SET bname=CONCAT("HARRY POTER-死亡圣器",i);
END IF; INSERT INTO book(bookname,author,info,year_publication,num) VALUE (bname,"JK罗琳","魔法故事","2000",i);
SET i=i+1;
END WHILE;
END $
DELIMITER;

执行存储过程

1 CALL insert_book10()

检验结果

 1 mysql> select * from book;
2 +--------+---------------------------+----------+--------------+------------------+------+
3 | boodid | bookname | author | info | year_publication | num |
4 +--------+---------------------------+----------+--------------+------------------+------+
5 | 1 | HARRY POTER-魔法石1 | JK罗琳 | 魔法故事 | 2000 | 1 |
6 | 2 | HARRY POTER-密室2 | JK罗琳 | 魔法故事 | 2000 | 2 |
7 | 3 | HARRY POTER-凤凰社3 | JK罗琳 | 魔法故事 | 2000 | 3 |
8 | 4 | HARRY POTER-火焰杯4 | JK罗琳 | 魔法故事 | 2000 | 4 |
9 | 5 | HARRY POTER-死亡圣器5 | JK罗琳 | 魔法故事 | 2000 | 5 |
10 +--------+---------------------------+----------+--------------+------------------+------+
11 5 rows in set (0.00 sec)


MYSQL存储过程-练习1的更多相关文章

  1. MySQL存储过程(转)

    一.MySQL 创建存储过程 "pr_add" 是个简单的 MySQL 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b" ...

  2. MySql存储过程

    MySQL 存储过程 ```sql CREATE PROCEDURE myprocedure (IN para01 INTEGER) BEGIN DECLARE var01 CHAR(10); IF ...

  3. mysql存储过程和存储函数

    mysql存储过程和存储函数 存数函数代码示例: DROP PROCEDURE IF EXISTS calc_ci_day_suc_rate; delimiter // CREATE FUNCTION ...

  4. mysql存储过程编写-入门案例-遁地龙卷风

    (-1)写在前面 这篇文章只是简要的叙述了mysql存储过程编写的基本概念. 我使用的mysql版本是5.7.9-log. 参照<<深入浅出MySQL>>. (0) delim ...

  5. MySQL存储过程动态SQL语句的生成

    用Mysql存储过程来完成动态SQL语句,使用存储过程有很好的执行效率: 现在有要求如下:根据输入的年份.国家.节假日类型查询一个节假日,我们可以使用一般的SQL语句嵌入到Java代码中,但是执行效率 ...

  6. MySQL 存储过程

    MySQL 存储过程 存储过程是通过给定的语法格式编写自定义的数据库API,类似于给数据库编写可执行函数. 简介 存储过程是一组为了完成特定功能的SQL语句集合,是经过编译后存储在数据库中. 存储过程 ...

  7. mysql存储过程详解

    mysql存储过程详解 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的S ...

  8. PHP调用MYSQL存储过程实例

    PHP调用MYSQL存储过程实例 标签: mysql存储phpsqlquerycmd 2010-09-26 11:10 11552人阅读 评论(3) 收藏 举报 实例一:无参的存储过程$conn = ...

  9. mysql存储过程语法及实例

    存储过程如同一门程序设计语言,同样包含了数据类型.流程控制.输入和输出和它自己的函数库. --------------------基本语法-------------------- 一.创建存储过程cr ...

  10. java, mybatis, 调用mysql存储过程

    Map<String, Object> bindinfo = new HashMap<String, Object>();            bindinfo.put(&q ...

随机推荐

  1. 【Python】Django学习1

    按黑马程序员的美多商场作方向: https://www.bilibili.com/video/BV1nf4y1k7G3 一.应用创建.注册处理.配置 Pycharm 创建Django项目: 自应用注册 ...

  2. 【Hibernate】02 快速入门

    环境搭建 : Windo7 x64 + IDEA 2018+ JDK 8+ Maven 3.0+ MySQL 5.0+ 创建Hibernate工程: 导入依赖坐标 <dependencies&g ...

  3. 【DataBase】SQL优化问题

    在DAO层的动态SQL: //订单新增,查询配件主数据 @SuppressWarnings("rawtypes") public PageInfoDto getPartsForPa ...

  4. 【Linux】Re02

    一.运行启动级别 0 关机 1 单用户 2 多用户状态没有网络服务 3 多用户状态存在网络服务 4 系统未使用保留给用户 5 图形界面 6 重启 命令: init [0 - 6] 图形化界面级别需要对 ...

  5. Java学习笔记2--JDK的安装和配置

    一.进入oracle官网,下载jdk oracle官网:Oracle | Cloud Applications and Cloud Platform ps:不同的浏览器,可能进入oracle官网,会只 ...

  6. Graphics2D绘图方法总结

    一.简介 在开发中可能会遇到这样一类场景,业务复杂度不算太高,技术难度不算太深,但是做起来就很容易把人整破防,伤害很高侮辱性很强的:绘图. 绘图最怕有人挑刺:这里变形,那里不对,全图失真. 最近在处理 ...

  7. SpringMVC:SpringMVC处理Ajax请求

    目录 @RequestBody @RequestBody获取json格式的请求参数 @ResponseBody @ResponseBody响应浏览器json数据 @RestController注解 @ ...

  8. Round #2022/11/26

    问题 B:染色 题目描述 有长度为 \(n\) 的一个序列,编号为 \(1\) 到 \(n\) ,现要对这些元素进行染色标记,若编号 \(i-j\) 为素数,且 \(1\le i < j \le ...

  9. EF Core – ExecuteUpdate and ExecuteDelete (Bulk updates 批量更新和删除)

    前言 EF Core 在 SaveChanges 之后会一句一句的去更新和删除数据. 有时候这个效率是很差的. 而 SQL 本来就支持批量更新和删除, 所以是 EF Core 的缺失. 在 EF Co ...

  10. CSS & JS Effect – Hamburger Menu

    效果 参考: Youtube – Responsive Navigation Menu Bar + Hamburger Menu Toggle - Only with CSS Youtube – Ma ...