mysql 的存储过程

一、准备工作

    新建一个表

/*
Navicat MySQL Data Transfer

Source Server : localhost_3306
Source Server Version : 50505
Source Host : localhost:3306
Source Database : kamanage

Target Server Type : MYSQL
Target Server Version : 50505
File Encoding : 65001

Date: 2018-08-31 17:43:23
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `temp_user`
-- ----------------------------
DROP TABLE IF EXISTS `temp_user`;
CREATE TABLE `temp_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) DEFAULT NULL,
`age` int(3) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of temp_user
-- ----------------------------
INSERT INTO `temp_user` VALUES ('4', 'zhanghao', '2');
INSERT INTO `temp_user` VALUES ('5', 'sql', '30');
INSERT INTO `temp_user` VALUES ('6', 'pengpeng', '30');

二、存储过程使用的范例:查找到该表里的所有数据,并删除

################################适用于多字段###############################

create PROCEDURE  delete_data()

begin

declare name1 char(30);

declare age1 int (3);

declare end_tag int default 0;#循环结束标志  默认是0,代表0的时候都可以循环

declare list CURSOR for  select name,age from  temp_user;

declare  CONTINUE  HANDLER  for  not FOUND  set end_tag=1  ;#为  未找到集合 生命处理程序  ,把循环结束标志设置为1

open list; ###打开游标

repeat ###循环开始

FETCH list into name1,age1;#游标开始一个一个滑动

IF not end_tag then  ###  if not    !=1 结束符!=1  就删除

delete from temp_user  where name=name1 and age=age1;

end if;

UNTIL  end_tag end repeat;#直到 end_tag=1(循环结束符值为1的时候)结束循环

end ;

call delete_data();####调用存储过程

drop procedure delete_data;####删除存储过程

mysql 的存储过程_多字段的更多相关文章

  1. Mysql 使用存储过程添加新字段

    -- 1, 注意SQL 语句开始处不要空格 -- 2, 在使用 [--] 进行注释时,后面请加空格 USE `test`; -- lastUpdateTime drop procedure if ex ...

  2. MySQL存储过程_创建-调用

    阅读目录:MySQL存储过程_创建-调用-参数 存储过程:SQL中的"脚本" 创建存储过程 调用存储过程 存储过程体 语句块标签 存储过程的参数 in:向过程里传参 out:过程向 ...

  3. mysql学习之路_事物_存储过程_备份

    数据备份与还原 备份:将当前已有的数据保留. 还原:将已经保留的数据恢复到对应表中 为什么要做数据备份 1,防止数据丢失,被盗,误操作 2,保护数据记录 数据备份还原方式有多种:数据表备份 单表数据备 ...

  4. MySQL存储过程中的3种循环,存储过程的基本语法,ORACLE与MYSQL的存储过程/函数的使用区别,退出存储过程方法

    在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体 ...

  5. MYSQL分页存储过程及事务处理

    最近给客户做的一小系统是SQLSERVER的数据库,因为特殊原因要切换到MYSQL上去,切换数据库确实让人头疼的,SQLSERVER和MYSQL的存储过程还是有很大差别的,下面是我做切换时转换的MYS ...

  6. mysql之——存储过程 + 游标 + 事务

    下面是自己曾经编写过的mysql数据库存储过程,留作存档,以后用到的时候拿来参考. 其中,涉及到了存储过程.游标(双层循环).事务. [说明]:代码中的注释只针对当时业务而言,无须理会. 代码如下: ...

  7. (转载)Mysql使用Describe命令判断字段是否存在

    (转载)http://www.jz123.cn/plus/view.php?aid=39200 工作时需要取得MySQL中一个表的字段是否存在 于是就使用Describe命令来判断 mysql_con ...

  8. MySql的存储过程和触发器

    Mysql的存储过程是类似于其它编程语言中的函数的功能,存储过程内部可以使用顺序循环和转移三种基本程序结构,而且整个存储过程可以接受和返回参数. 创建存储过程(procedure)时,因为其内部有以; ...

  9. MySQL 查询 存储过程 视图 触发器 函数 索引 建表语句 数据库版本 当前登录用户 当前数据库名称

    MySQL 查询 存储过程 视图 触发器 函数 索引 建表语句 数据库版本 当前登录用户 当前数据库名称   INFORMATION_SCHEMA.TABLES INFORMATION_SCHEMA. ...

随机推荐

  1. leecode第二百九十二题(Nim游戏)

    class Solution { public: bool canWinNim(int n) { )==)//用与的时候,要注意优先级问题 //用n%4==0的时候,其耗时比用&短,但是空间消 ...

  2. MySQL优化查询 5.7版本

    1. 变更参数 : query_cache_type 如果何配置查询缓存: query_cache_type 这个系统变量控制着查询缓存工能的开启的关闭.query_cache_type=0时表示关闭 ...

  3. Project Euler 75: Singular integer right triangles

    题目链接 思路: 勾股数组,又称毕达格拉斯三元组. 公式:a = s*t b = (s^2 - t^2) / 2 c = (s^2 + t^2) / 2 s > t >=1 且为互质的奇数 ...

  4. python - xml转excel

    xml转excel,可以用xml.etree.ElementTree去解析xml文件,然后用xlwt写入excel 示例:ConvConfig.xml <Conveyor_Channel_1&g ...

  5. Apache Hadoop学习笔记一

    官网:http://hadoop.apache.org/ 1 什么是Hadoop? Apache™Hadoop®项目开发了用于可靠,可扩展的分布式计算的开源软件. Apache Hadoop软件库是一 ...

  6. vue使用webapck的最基本最简单的开发环境配置

    这个配置生成出来的代码只能支持ES6的浏览器下正常显示. npm init -y npm install vue-loader vue-template-compiler vue-style-load ...

  7. 开发者的自测利器-Hprof命令(寻找cpu热点)

    测试代码: public class HProfTest { public void slowMethod() { try { Thread.sleep(1000); } catch (Excepti ...

  8. 现代 PHP 新特性 —— 生成器入门(转)

    原文链接:blog.phpzendo.com PHP 在 5.5 版本中引入了「生成器(Generator)」特性,不过这个特性并没有引起人们的注意.在官方的 从 PHP 5.4.x 迁移到 PHP ...

  9. mysql创建新用户出现错误处理

    心血来潮创建一个新用户,结果...步步艰难啊,好在最后成功,把我出现的问题和解决方案抛出来,希望大家顺顺利利创建成功┗|`O′|┛ 嗷~~ 我出现的错误主要有这三种: 1.ERROR 1064 (42 ...

  10. VNPY 文件目录结构

    VNPY ├─examples 可以运行起来的实际程序│ ├─CoinapiDataService│ ├─CryptoTrader│ ├─CtaBacktesting│ ├─CtaTrading│ ├ ...