mysql中游标在存储过程中的具体使用方法
昨天写的一个东东,分享下给大家。
drop PROCEDURE if exists sp_cleanUserData;
CREATE PROCEDURE `sp_cleanUserData`()
BEGIN
/*定义游标*/
declare v_dt bigint(20) default 0 ;
declare v_num INT DEFAULT 0;
/*游标循环到末尾时给定义的常量赋值*/
declare cur_userId CURSOR FOR select userId from user_level_info where DATE_SUB(CURDATE(), INTERVAL 60 DAY) >= firstLoginDate and lv<=10 and vip=0 ;
declare CONTINUE HANDLER FOR SQLSTATE '02000' SET v_dt = -1;
/*开游标*/
OPEN cur_userId;
/*游标赋值*/
FETCH cur_userId INTO v_dt;
set v_num=1;
/* 循环体 */
WHILE ( v_dt !=-1 ) DO
/* 用户任务表 */
delete from task_user where user_id =v_dt;
/* 玩家公告 */
delete from user_action_info where userId =v_dt;
/*每循环100次commit下*/
set v_num= v_num+1;
if v_num>100 then
commit;
set v_num=1;
end if;
/*读取下一行的数据*/
FETCH cur_userId INTO v_dt;
/*循环结束*/
END WHILE;
/*关闭游标*/
CLOSE cur_userId;
END;
call sp_cleanUserData;
mysql中游标在存储过程中的具体使用方法的更多相关文章
- Mysql 视图 游标 触发器 存储过程 事务
Mysql 视图 触发器 存储过程 游标 游标是从数据表中提取出来的数据,以临时表的形式存放在内存中,在游标中有一个数据指针,在初始状态下指向的是首记录,利用fetch语句可以移动该指针,从而对游标中 ...
- db2中临时表在存储过程中的使用
DROP PROCEDURE ADMINISTRATOR.SP_TEST (INTEGER, CHARACTER ()); CREATE PROCEDURE administrator.sp_test ...
- oracle数据库中函数和存储过程中的区别
一.函数必须有返回值,过程没有返回值: 二.函数可以单独执行,过程必须通过execute执行: 三.函数可以嵌入SQL中执行,过程不能. 可以将比较复杂的查询写成函数,然后在过程中调用.
- 判断SQL数据库中函数、存储过程等是否存在的方法
下面为您介绍sql下用了判断各种资源是否存在的代码,需要的朋友可以参考下,希望对您学习sql的函数及数据库能够有所帮助.库是否存在if exists(select * from master..sys ...
- SQL SERVER中如何查找存储过程中一段代码
select b.name ,a.text from syscomments a,sysobjects b where and object_id(b.name)=a.id and b.xtype i ...
- 使用游标、存储过程、pivot 三种方法导入数据
--使用游标循环 if (exists (select * from sys.objects where name = 'Base_RecordTend_Test')) drop proc Base_ ...
- SQL Server数据库的存储过程中定义的临时表,真的有必要显式删除临时表(drop table #tableName)吗?
本文出处:http://www.cnblogs.com/wy123/p/6704619.html 问题背景 在写SQL Server存储过程中,如果存储过程中定义了临时表,有些人习惯在存储过程结束的时 ...
- mysql 存储过程中使用游标中使用临时表可以替代数组效果
mysql不支持数组.但有时候需要组合几张表的数据,在存储过程中,经过比较复杂的运算获取结果直接输出给调用方,比如符合条件的几张表的某些字段的组合计算,mysql临时表可以解决这个问题.临时表:只有在 ...
- Mysql 存储过程中使用多游标
Mysql 存储过程中使用多游标 drop procedure IF EXISTS test_proc_1; create procedure test_proc_1() begin ; ) ; ) ...
随机推荐
- Python9-函数-day9
初识函数定义与调用 def my_len(): i = 0 for k in s1: i +=1 return i #返回值 # s = 'tim' s1 = '班主任阿娇' length =my_l ...
- foxmial 和 outlook设置问题
您可以使用支持POP3的客户端软件(例如Foxmail或Outlook)收发您的邮件.请配置您的电子邮件客户端,以下载QQ邮箱邮件. 了解如何进行配置,请单击您的电子邮件客户端名称: Foxmail设 ...
- 对freescale的mfgtool的ucl2.xml的理解
转载于此:http://blog.csdn.net/bugouyonggan/article/details/8664898 对于Freescale MFG编程工具控制文件ucl2.xml的分析 为了 ...
- Makefile文件中的sed介绍
haoxin$ sed --helpUsage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... -n, --quie ...
- LeetCode(114) Flatten Binary Tree to Linked List
题目 分析 按要求转换二叉树: 分析转换要求,发现,新的二叉树是按照原二叉树的先序遍历结果构造的单支二叉树(只有右子树). 发现规则,便容易处理了.得到先序遍历,构造即可. AC代码 /** * De ...
- cocos2d中的anchorPoint属性详解
原文地址:http://www.tuicool.com/articles/ANVjMj 1> anchorPoint对position的影响 anchorPoint的作用就是相当于确定在子节点的 ...
- 【转】VS2017的VSIX插件开发
最近从头开发了一遍一个VSIX的插件,用于调测的一个工具: 特此把相关的过程经验记录下来: 第一步:建立工程 1. 首先是安装上: 需要安装Visual Studio SDK,这个在安装VS ...
- visionPro工业视觉工具中英文一览表
- 自己项目使用了ARC,项目中使用第三方库继续引用ARC
Objective-C引入ARC(Automatic Reference Counting)后,我们经常会面对这样一种困境:自己的项目使用了ARC,却发现要使用的第三方类库是non-ARC的:又或者自 ...
- 【JavaScript 4—基础知识点】:函数
导读:函数这个东西,从VB开始就一直在用,不过那时候一般写不出来自己的函数或者类,觉得最高大上的,就是调用API函数了.现在,学习到了JavaScript,总结总结函数,显得很有必要.这篇文章,就从最 ...