database - 在 PLSQL 中,如何迭代更新一个非常大的表的字段?

标签 database plsql oracle11g

我有一个包含 3000 万行的 PLSQL 表,我想为所有行更新一个字段。

我尝试了一个循环(将更新批处理为 100000 行间隔)但我不能使用

update tableA set columnA=1 where rownum between lower and upper

循环在新的上限值和下限值之间移动,直到行数用尽。

最佳答案

为什么要迭代更新?你为什么不想做一个简单的 UPDATE

UPDATE tableA
   SET columnA = 1

这不是更新大量行的最有效方式。它还生成最少的 REDOUNDO

关于database - 在 PLSQL 中,如何迭代更新一个非常大的表的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8978508/

相关文章:

php - MYSQL插入表中,没有错误,但仍然无法正常工作

Java - 两个应用程序之间的缓存同步

C# Log4Net 和 Oracle 11g

java.sql.SQLIntegrityConstraintViolationException : ORA-00001: unique constraint while running Oracle functions

oracle - 一个大表分区然后再分区还是几个较小的分区表?

android - 从两个应用程序访问同一个 sqlite 数据库

iphone - 连接到远程服务器/数据库以从 iPhone 检索数据的最佳方式是什么

php - 初学者 php mysql - 从输入表单将数据插入到表中

oracle - 忽略 PL/SQL 函数的返回值

database - 如何找到记录oracle的分区