我做了一个SQL查询来更新表上的寄存器。该表有大约1500万个寄存器。更新语句如下:
UPDATE temp_conafe
set apoyo = trim(apoyo)
where cve_status like '%APOYO%';
我一直在检查字段 v $ transaction.used_ured 以查看查询是向前滚动还是向后滚动,但当记录数达到超过15百万时,查询开始向后滚动。
我不是DBA,只是程序员,但我不能继续开发直到那个东西更新我的寄存器。
答案 0 :(得分:2)
看起来你的交易很重要。尝试在where中添加另一个限制条款。如果您有Id字段,可以添加以下内容:
where cve_status like '%APOYO%'
AND id > 1 AND id < 100000
您需要多次运行它,相应地更改范围。如果这不是一个选项,你必须与你的DBA交谈,并要求他给你更多的资源。