当前位置: 首页 > 知识库问答 >
问题:

Spring批量表清除

彭梓
2023-03-14

清除Spring表的最佳方法是什么?

Spring是否提供任何用于清除的API?或者,我们是否需要对所有Spring批处理表执行delete语句?

共有3个答案

水麒
2023-03-14

我创建了一个过程来在给定日期之前清理数据

    DELIMITER $$

DROP PROCEDURE IF EXISTS purgeJobsTableBefore 
$$

CREATE PROCEDURE purgeJobsTableBefore (
    IN createTime VARCHAR(100)
)
BEGIN

DELETE
FROM
   batch_job_execution_context 
WHERE
   JOB_EXECUTION_ID IN 
   (
      SELECT
         JOB_EXECUTION_ID 
      FROM
         batch_job_execution 
      WHERE
         create_time <= createTime
   );

DELETE
FROM
   batch_job_execution_params 
WHERE
   JOB_EXECUTION_ID IN 
   (
      SELECT
         JOB_EXECUTION_ID 
      FROM
         batch_job_execution 
      WHERE
         create_time <= createTime
   );

DELETE
FROM
   batch_step_execution_context 
WHERE
   step_execution_id IN 
   (
      SELECT
         step_execution_id 
      FROM
         batch_step_execution 
      WHERE
         JOB_EXECUTION_ID IN 
         (
            SELECT
               JOB_EXECUTION_ID 
            FROM
               batch_job_execution 
            WHERE
               create_time <= createTime
         )
   );

DELETE
FROM
   batch_step_execution 
WHERE
   JOB_EXECUTION_ID IN 
   (
      SELECT
         JOB_EXECUTION_ID 
      FROM
         batch_job_execution 
      WHERE
         create_time <= createTime
   );

DELETE
FROM
   batch_job_execution 
WHERE
   create_time <= createTime;

DELETE
FROM
   batch_job_instance 
WHERE
   JOB_INSTANCE_ID < (
   SELECT
      MIN(JOB_INSTANCE_ID) 
   FROM
      batch_job_execution 
   WHERE
      create_time >= createTime);

END;
$$

您只需调用带有日期的过程即可在该日期之前清除数据。

CALL purgeJobsTableBefore('2020-05-22');
孙熠彤
2023-03-14

另一个选项是设置批次。数据来源init=true在属性中,这意味着在每个新部署上删除并重新创建表。。

宇文和同
2023-03-14

我已经为此挣扎了一段时间,但没有标准的实现。

然后我想出了一个我自己的存储过程

我已经创建了自己的变量-用于在六个月之前清除最近六个月的数据\u六个月\u日期

你可以利用自己的价值。

解决方案位于以下链接-

Spring批处理元数据表清除

 类似资料:
  • 本文向大家介绍Shell脚本批量清除Nginx缓存,包括了Shell脚本批量清除Nginx缓存的使用技巧和注意事项,需要的朋友参考一下 前言*随着整个互联网的发展,产生了无数大大小小的网站,随之而来用户对网站UI和速度体验也在日益加强,对企业或者个人来说,赢得用户体验也就意味着赢得先机。 那今天我们在这里针对网站速度这方面来一起交流,提高网站速度对于运维工程师、程序员来说变得至关重要。运维工程师首

  • 使用CommandLineRunner处理工作

  • 我希望将Spring Batch与RabbitMQ集成。我已经开发了如下代码,但是没有数据通过通道。代码中有什么问题? hannel.java 顾客JAVA CustomerFieldSetMapper。JAVA JobConfig。JAVA 应用属性 顾客csv SpringBatchAmqpApplication.java

  • 在Spring batch中(请参见https://docs.Spring.io/spring-batch/3.0.x/reference/html/metadataschema.html),有六个表: batch_job_execution batch_job_execution_context batch_job_execution_params batch_job_instance batc

  • 有什么方法可以用spring batch实现这一点,或者我应该创建一个Dao并批量删除每个集合的旧数据。

  • 本文向大家介绍nginx proxy_cache批量清除缓存的脚本介绍,包括了nginx proxy_cache批量清除缓存的脚本介绍的使用技巧和注意事项,需要的朋友参考一下 前言:之前使用官方的nginx proxy_cache作为CDN静态缓存发现该模块清理缓存是一个大问题,只能一条一条url的清除,为此写了一个批量清除缓存的脚本 主要功能包括: 1.按文件类型清理 2.按具体的文件名清理 3