Ci sono due opzioni qui. O devi impostare il vincolo da differire all'interno della transazione utilizzando il comando mostrato di seguito
SET CONSTRAINTS ALL DEFERRED;
Questo dovrebbe essere eseguito prima di eseguire UPDATE
affermazione che hai definito.
In alternativa, puoi impostare il vincolo su INITIALLY DEFERRED
nella definizione della tabella
create table test(a number not null initially deferred deferrable, b number);
Dopo aver eseguito una di queste operazioni, dovresti essere in grado di eseguire il DML che hai nella domanda.