mysql 将三个月的数据导到历史表_迁移数据到历史表,减少业务表中数据压力 Mysql...

本文介绍了一个MySQL存储过程,用于将三个月前的数据迁移到历史表`platform_patient_historys`,以减轻业务表`platform_patient`的数据压力。存储过程包括选择指定时间范围内的记录,插入历史表,删除原始表中的数据,并记录迁移日志。此外,还设置了每日定时事件以自动执行此操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#数据迁移存储过程

DROP PROCEDURE IF EXISTS `delete_platform_patient`;

DELIMITER ;;

CREATE DEFINER=`root`@`%` PROCEDURE `delete_platform_patient`()

BEGIN

declare counts integer;-- 记录迁移条数

declare date_former datetime;-- 定义一个时间变量用来存放时间

declare result_code integer; -- 定义返回结果并赋初始值

declare CONTINUE HANDLER for SQLEXCEPTION set result_code=1; -- 在执行过程中出现任何异常result_code为1

select date_sub(now(),interval 3 month) into date_former; -- 获取三个月前的时间存入定义的时间变量中

select count(1) into counts from platform_patient where create_time

start TRANSACTION;-- 进行事物处理

insert into platform_patient_historys select * from platform_patient p where p.create_time

delete from platform_patient where create_time

insert into t_yh_move_data_log (time,tablename,count) values(NOW(),'platform_patient',counts);

IF result

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值