首页 > 数据库 >mysql for循环储存过程

mysql for循环储存过程

时间:2022-11-22 13:24:13浏览次数:40  
标签:tmp 储存 mysql list 游标 循环 许可证 test declare

数据库200多万条数据,整表关联更新耗时8个小时没有结果
索性尝试了一下储存过程划分数据循环更新,耗时453秒,真香

delimiter //                    # 定义//为一句sql的结束标志,取消;的所代表的意义
drop procedure if exists test;  # 如果存在名字为test的procedure则删除
create procedure test()         # 创建函数
begin
    declare 许可证号_tmp varchar(50);   # 声明变量
    declare flag int default 0;        # 声明变量
    declare s_list cursor for select 许可证号 from 许可证;   -- 声明游标
    declare continue handler for not found set flag=1;

    open s_list;                       # 打开游标
    fetch s_list into 许可证号_tmp;     # 使用游标
    while flag <> 1 do
      # 此处放置更新语句
      select 许可证号_tmp;
      fetch s_list into 许可证号_tmp; 			
    end while;
    close s_list;                      # 关闭游标

end

//
delimiter ; 

call test();

标签:tmp,储存,mysql,list,游标,循环,许可证,test,declare
From: https://www.cnblogs.com/meizhengchao/p/16914817.html

相关文章

  • MySQL
    MySQL安装环境:win71、下载zip安装包:MySQL8.0ForWindowszip包下载地址:https://dev.mysql.com/downloads/file/?id=476233,进入页面后可以不登录。后点击底部“Nothank......
  • mysql三范式
    第一范式(1NF):要求数据达到原子性,使数据不可再分;例如:  进行修改: 第二范式(2NF):使每一行数据具有唯一性,并消除数据之间的“部分依赖”,使一个表中的非主键字段,完全依赖于主......
  • mysql分区
    1.检查mysql是否支持分区 2.查看是否有分区   2.分区类型:    RANGE 分区:基于属于一个给定连续区间的列值,把多行分配给分区.·      LIST 分区:类似......
  • mysql慢查询操作
    MySQL慢查询日志总结慢查询日志概念   MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值......
  • js 中 forEach 如何跳出循环?
    //1.for方法跳出循环functiongetItemByIdFor(arr,id){varitem=null;for(vari=0;i<arr.length;i++){console.log("for循环i",i);......
  • wpf ListBox循环显示颜色选择框
     数据源list,设置ListBoxItem实现<Page.Resources><StyleTargetType="ListBoxItem"><SetterProperty="Template"><Setter......
  • mysql复习-基本语法
    第03章_基本的SELECT语句讲师:尚硅谷-宋红康(江湖人称:康师傅)官网:http://www.atguigu.com1.SQL概述1.1SQL背景知识1946年,世界上第一台电脑诞生,如今,借由这台电脑发......
  • mysql复习-安装和常规问题
    第02章_MySQL环境搭建讲师:尚硅谷宋红康(江湖人称:康师傅)官网:http://www.atguigu.com1.MySQL的卸载步骤1:停止MySQL服务在卸载之前,先停止MySQL8.0的服务。按键盘上的“......
  • 【Python】for-in循环、while循环
    1.for-in循环适合用于知道循环次数的场景。计算1~100求和的结果sum=0forxinrange(101):sum+=xprint(sum)range的用法range(101):产生0~100范围的整数,......
  • MySql复习-数据库的概述
    第01章_数据库概述讲师:尚硅谷-宋红康(江湖人称:康师傅)官网:http://www.atguigu.com1.为什么要使用数据库持久化(persistence):-存到可掉电式存储设备中以供之后使用......