-- 大表数据迁移,每天凌晨1点到5点执行,执行间隔时间10分钟,迁移旧数据到历史表。DELIMITER $$
USE `dbx`$$
电脑技术网对《FalseMySQL存储过程-->通过游标遍历和异常处理迁移数据到历史表》总结来说,为我们程序员很实用。
DROP PROCEDURE IF EXISTS `pro_xx`$$
CREATE PROCEDURE `pro_xx`()
BEGIN
DECLARE p_oalid INT DEFAULT 0;
DECLARE STOP INT DEFAULT 0;
DECLARE cur_oalid CURSOR FOR
SELECToal.id FROM oal_xxx oal WHERE oal.`ymd`
DECLARE EXIT HANDLER FOR SQLSTATE '02000' /**包含游标not found*/
BEGIN
SET STOP=1;
INSERTINTO db_logs(log_type,table_name,action_name,log_msg,create_time)
SELECT1, 'oal_xxx','pro_oal_log_move',CONCAT('primary key:',p_oalid,' 游标执行正常结束!'),NOW();
END;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
SETSTOP=1;
INSERTINTO db_logs(log_type,table_name,action_name,log_msg,create_time)
SELECT2, 'oal_xxx','pro_oal_log_move',CONCAT('primary key:',p_oalid,' 移动执行失败'),NOW();
END;
OPEN cur_oalid;
-- 读取一行数据到变量
FETCH cur_oalid INTO p_oalid;
-- 这个就是判断是否游标已经到达了最后
WHILE STOP <> 1 DO
-- select p_id;
START TRANSACTION;
-- 进行数据迁移
REPLACE INTO oal_xxx_history SELECT oal.*FROM oal_xxx oal WHERE oal.id=p_oalid ;
DELETE FROM oal_xxx WHERE id=p_oalid;
-- INSERT INTO t (tid) VALUES (p_tid);
COMMIT;
-- 读取下一行的数据
FETCH cur_oalid INTO p_oalid;
END WHILE;
CLOSE cur_oalid; -- 关闭游标
END$$
DELIMITER ;
更多:FalseMySQL存储过程-->通过游标遍历和异常处理迁移数据到历史表
https://www.002pc.comhttps://www.002pc.com/mysql/2156.html
你可能感兴趣的游标,gt,MySQL,遍历,存储,迁移
js匀速动画Jquery遍历Json数据的方法
本文实例讲述了Jquery遍历Json数据的方法。分享给大家供大家参考。具体如下:第二电脑网认为此文章对《Jquery遍历Json数据的方法》说的很在理。
php ECShop formPHP面向对象程序设计之对象的遍历操作示例
本文实例讲述了PHP面向对象程序设计之对象的遍历操作。分享给大家供大家参考,具体如下:
对象的遍历和数组的遍历一样,对象的遍历指的是实例属性的遍历。
下面遍历出来的属性,是
php >=7.0PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储、处理方便,但是不直观,格式化日期直观,但是处理起来不如Unix时
python boundubuntu python2.7安装mysql-python
《python boundubuntu python2.7安装mysql-python》总结了关于python培训教程,对于我们来第二电脑网确实能学到不少知识。
js中触发php文件PHP遍历数组元素
1.什么是遍历所谓遍历(Traversal)英['trævɜːsəl],是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。访问结点所做的操作依赖于具体的应用问题。 遍历在二
python 堆栈内存Python遍历numpy数组的实例
在用python进行图像处理时,有时需要遍历numpy数组,下面是遍历数组的方法:
[rows, cols] = num.shape for i in range(rows - 1): for j
linux 查看某个端口连接数mysql主从不同步的2种解决方法
今天发现Mysql的主从数据库没有同步先上Master库:mysql>show processlist; 查看下进程是否Sleep太多。发现很正常。
python调用大写函数python中字典的循环遍历的两种方式
开发中经常会用到对于字典、列表等数据的循环遍历,但是python中对于字典的遍历对于很多初学者来讲非常陌生,今天就来讲一下python中字典的循环遍历的两种方式。注意: python2和
php md5 解密函数PHP以及MYSQL日期比较方法
MYSQL日期比较 TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30; 我们的date_col必须是日期时间格式,而不能是时间戳, mysql> SELECT