java - 准备好的语句更新 - 性能改进

标签 java performance jakarta-ee jdbc prepared-statement

我的应用程序中有一个 Oracle 准备好的语句,它将一次性更新表中大约 100,000 条记录的状态。 例如:

UPDATE <TABLE NAME> SET STATUS=SUCCESS' where STATUS='INIT'

上述查询将一次性更新大约超过 100,000 条记录。 有什么方法可以提高性能,例如在准备好的语句上设置批处理/获取大小?如果我使用带有上述查询的准备好的语句,由于我没有设置任何批量执行的参数,因此我只会执行一次,我该怎么做?

最佳答案

一种优化方法是不要一次运行一个查询(因为每个查询的系统延迟太慢...)

您可以使用批量更新。

如果您使用 Spring 则使用 batchUpdate

或者如果您直接处理 JDBC,则使用

preparedStatement.addBatch(); 

preparedStatement.executeBatch();

关于java - 准备好的语句更新 - 性能改进,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15354423/

相关文章:

java - 处理 Java 默认级别访问说明符

java - 如何获取按钮的值并将其显示在edittext上?

java - 如何检查给定间隔由哪周和哪月组成?

java - 使用 java.io 对 native java 数组进行高效序列化

java - 我可以在 IntelliJ 中跨过 while 循环吗?

Python - 整个 PC 网络在重复请求期间变慢

安卓性能 : Adding view programmatically vs setting view to GONE/VISIBLE

git - 使用 GIT 对 Java 网站进行版本控制的最佳方法是什么

spring - 如何在 Prod/Dev 环境中处理 CORS URL?

R数据.表: efficiently access and update a variable column name in j expression with grouping