MySql 存储过程使用游标循环插入数据问题

gonwgenjun181 gonwgenjun181 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
DELIMITER $$
CREATE PROCEDURE wheelSta()
BEGIN
DECLARE inexp,income,taks,c_count,t_taks, e,c INT;
DECLARE b INT DEFAULT 0; /*是否达到记录的末尾控制变量*/
DECLARE day_1,day_2 DATE;
DECLARE cur_1 CURSOR FOR SELECT COUNT,creat_time,taks FROM `cn_members_log` WHERE taks = 12 AND DATE(creat_time) = DATE_SUB(CURDATE(),INTERVAL 1 DAY);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET b = 1;
OPEN cur_1;
FETCH cur_1 INTO c_count, day_1, t_taks; /*获取第一条记录*/
WHILE b=0 DO
INSERT INTO cn_members_sta(inexp,TIME,taks) VALUES(c_count, day_1, t_taks);
FETCH cur_1 INTO c_count, day_1, t_taks; /*取下一条记录*/
END WHILE;
CLOSE cur_1;
END$$
DELIMITER ;

通过SELECT COUNT,creat_time,taks FROM `cn_members_log` WHERE taks = 12 AND DATE(creat_time) = DATE_SUB(CURDATE(),INTERVAL 1 DAY);这句可以查出4条记录,但是执行后在cn_members_sta表中却一条数据都没有,求解~
...全文

相关推荐

mysql存储过程基础之遍历多表记录后插入第三方表中详解

前言 自从学过存储过程后,就再也没有碰过存储过程,这是毕业后写的第一个存储过程。 因为项目里设备的种类比较多,分别存在不同的数据表中,java中对应不同的java bean对象,想要统一管理有点困难。最近正好要开发一个功能模块,就是需要统一对设备进行处理,想着为了以后都能方便的统一处理各种设备,就从现在开始设计一套方案管理起这些项目吧。 如何统一管理呢? 如果从项目一开始设计的时候就能考虑到项目会发展成今天这样,当初就应该抽取公共父类,对所有类型的所有公共字段进行统一抽取,这样无论添加多少模块,需要对设备进行操作的时候,都只需要关联统一父类,数据间的关系就清晰多了,开发也会简单很多。 那么现在

weixin_38516190

mysql游标嵌套[文].pdf

mysql游标嵌套[文].pdf

xhr131452007

MySQL游标的使用及实现步骤详解

MySQL游标是一种在数据库存储过程中用于逐行处理查询结果的控制结构。 其主要步骤包括:声明游标以定义所需查询,打开游标以进行初始化,使用FETCH提取每一行数据,并在完成操作后关闭游标以释放资源。 游标通常用于需要对结果集的每一行执行特定操作的场景,如更新或删除。通过DECLARE CONTINUE HANDLER处理结束条件,可以在遍历完成后正常退出循环。虽然游标为逐行数据处理提供了便利,但在处理大量数据时可能影响性能,因此在设计时需权衡其使用的必要性和效率。

stormsha

mysql 树形结构查询

mysql 树形结构查询,使用存储过程,实现mysql的树形结构查询

whg0527

通过存储过程删除Mysql数据库表中的重复记录.pdf

通过存储过程,删除Mysql数据库表中的重复记录,只保留一条;

微心微世界
评论 7
收藏 已收藏
分享
返回顶部
gonwgenjun181
MySQL 57,062 成员 56,759 内容