La query gerarchica funziona solo con SELECT. Non funziona con UPDATE (sono d'accordo che potrebbe essere pulito se lo facesse).
Quindi quello che puoi fare è questo:
update HTABLE
set status = 'INACTIVE'
WHERE STATUS <> 'CLOSE'
and id in ( select c.id
from htable
connect by prior ID = PARENT_ID
start with PARENT_ID = 12345);
Nota l'ordine delle colonne connect by prior ID = PARENT_ID
. Normalmente vogliamo scendere dall'albero dalla riga START WITH, che è quello che ho fatto. Il tuo ordine connect by prior PARENT_ID = ID
sale sull'albero dal 12345 ai suoi genitori, nonni, ecc. Se è quello che vuoi, cambia il connect by
clausola indietro.