java - 读时删除(添加每条语句删除)最后批量删除好还是单个删除好?

标签 java sql oracle

归档和删除过程。推荐哪一款?

此过程在一天结束时运行,此时窗口对除此之外的任何无关交易关闭,以禁止干扰以下交易。

我。批量删除

object = read()

while ( hasNext() ) 
{
  object = next();
  call the archive_process to archive the object.
  add to delete.
}

batch_delete.

二.单个删除语句。

object = read()

while ( hasNext() ) 
{
  object = next();
  call the archive_process to archive the object.
}

use the same sql as above, but instead delete in a single statement.

推荐哪一个?

最佳答案

这完全取决于您的具体需求:

  • 如果您的代码要求删除每条记录以便执行其他任务,则可能需要在每个循环中一次删除一行。
  • 如果您的代码可以独立于是否删除记录来执行其任务,那么最后(在单个批处理中)删除所有内容会更好。

您需要记住,每次删除都会触发对数据的操作,并且可能会影响程序的磁盘读写速度。与许多单行删除操作相比,单次批量删除可能会对代码速度产生积极影响。

关于java - 读时删除(添加每条语句删除)最后批量删除好还是单个删除好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16487510/

相关文章:

python - 使用 Python 将表从 KDB+ 更新到 SQL Server

c++ - PL/SQL - 设置空值

java - 在 java swing 应用程序中使用线程设置/刷新信息的好方法

java - 带有 Eureka 服务器的 Spring Boot 1.4.2.RELEASE - 异常 : org. springframework.beans.factory.NoSuchBeanDefinitionException

sql - Oracle 获取外键

oracle - 如何约束数据库表,以便只有一行可以在列中具有特定值?

删除多行后的Oracle 10g表大小

java - Sonar 提示记录并重新抛出异常

java - 无法使用 Tomcat9 访问本地主机

sql - NoSQL和SQL如何选择?