MYSQL存储过程-练习1
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的更多相关文章
- MySQL存储过程(转)
一.MySQL 创建存储过程 "pr_add" 是个简单的 MySQL 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b" ...
- MySql存储过程
MySQL 存储过程 ```sql CREATE PROCEDURE myprocedure (IN para01 INTEGER) BEGIN DECLARE var01 CHAR(10); IF ...
- mysql存储过程和存储函数
mysql存储过程和存储函数 存数函数代码示例: DROP PROCEDURE IF EXISTS calc_ci_day_suc_rate; delimiter // CREATE FUNCTION ...
- mysql存储过程编写-入门案例-遁地龙卷风
(-1)写在前面 这篇文章只是简要的叙述了mysql存储过程编写的基本概念. 我使用的mysql版本是5.7.9-log. 参照<<深入浅出MySQL>>. (0) delim ...
- MySQL存储过程动态SQL语句的生成
用Mysql存储过程来完成动态SQL语句,使用存储过程有很好的执行效率: 现在有要求如下:根据输入的年份.国家.节假日类型查询一个节假日,我们可以使用一般的SQL语句嵌入到Java代码中,但是执行效率 ...
- MySQL 存储过程
MySQL 存储过程 存储过程是通过给定的语法格式编写自定义的数据库API,类似于给数据库编写可执行函数. 简介 存储过程是一组为了完成特定功能的SQL语句集合,是经过编译后存储在数据库中. 存储过程 ...
- mysql存储过程详解
mysql存储过程详解 1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的S ...
- PHP调用MYSQL存储过程实例
PHP调用MYSQL存储过程实例 标签: mysql存储phpsqlquerycmd 2010-09-26 11:10 11552人阅读 评论(3) 收藏 举报 实例一:无参的存储过程$conn = ...
- mysql存储过程语法及实例
存储过程如同一门程序设计语言,同样包含了数据类型.流程控制.输入和输出和它自己的函数库. --------------------基本语法-------------------- 一.创建存储过程cr ...
- java, mybatis, 调用mysql存储过程
Map<String, Object> bindinfo = new HashMap<String, Object>(); bindinfo.put(&q ...
随机推荐
- 【微信小程序】05 设备信息 & 请求API
获取系统信息(设备信息) https://developers.weixin.qq.com/miniprogram/dev/api/base/system/wx.getSystemInfo.html ...
- 【H5】16 表单 其五 表单验证
在将数据提交到服务器之前,重要的是确保以正确的格式填写所有必需的表单控件.这称为客户端表单验证,可帮助确保所提交的数据符合各种表单控件中规定的要求.本文将引导您通过基本概念和客户端表单验证示例. 先决 ...
- 光刻机巨头ASML公布了其最新的品牌短片《站在巨人的肩膀上》
光刻机巨头ASML公布了其最新的品牌短片<站在巨人的肩膀上>: 荷兰光刻机:ASML使用AI工具midjourney和runway制作宣传片 这个时长1分50秒短片的特别地方在于,它是完全 ...
- 大语言模型(LLM)运行报错:cannot import name 'AutoModel' from 'transformers'
解决方法: 安装pytorch即可,不过需要注意项目的README文件和requirements文件,安装对应版本的pytorch即可.
- 【转载】 Tensorflow Guide: Batch Normalization (tensorflow中的Batch Normalization)
原文地址: http://ruishu.io/2016/12/27/batchnorm/ ------------------------------------------------------- ...
- 使用ChatGPT时的信息安全问题
ChatGPT由于其在对话方面的AI性能的卓越表现已经远远超越了同类的产品,因此赢得了国际科研领域的极大重视,并且也得到了广大用户的支持,但是在人们尽情使用的时候往往忘记了关于ChatGPT的信息安全 ...
- Linux系统——删除用户命令
背景: 负责管理实验室的服务器,近期有保研的大三同学放弃保送到实验室而选择其他实验室,因此需要把之前给他开的账号取消掉. ===================================== ...
- oracle执行报错 ORA-01722: 无效数字
1.背景 执行Oracle存储过程时报错:ORA-01722: 无效数字 2.错误描述 1.对于两个类型不匹配,一个数字类型,一个非数字类型的值进行赋值操作;2.两个类型不匹配的值进行比较操作,比如一 ...
- QWen2-72B-Instruct模型安装部署过程
最近在给我们的客户私有化部署我们的TorchV系统,客户给的资源足够充裕,借此机会记录下部署千问72B模型的过程,分享给大家! 一.基础信息 操作系统:Ubuntu 22.04.3 LTS GPU: ...
- 如何将Linux的NIC 名称更改为 eth0 而不是 enps33 或 enp0s25,只要几秒钟
概述 我们使用Linux系统,网卡名称通常都是eth0,但是有一些新的linux发行版,网卡名字 enps33 或 enp0s25. peng@ubuntu:~$ ifconfig ens33 Lin ...