Для больших таблиц в любом случае лучше выполнить только одно обновление .
Вы можете объединить оба обновления в одно:
select * from ACCOUNTS;
A
-
1
2
3
4
BEGIN
update ACCOUNTS
set ACC = case when ACC = '3' then '1'
when ACC = '4' then '2' end
where ACC in ('3','4');
dbms_output.put_line('rows updated ' || SQL%ROWCOUNT);
END;
/
rows updated 2
select * from ACCOUNTS;
A
-
1
2
1
2
Не забудьтедо COMMIT
.