Mi chiedo se è necessario scrivere il commit dopo aver inserito / eliminato / aggiornato in funzione / procedura?
Esempio:
create or replace function test_fun
return number is
begin
delete from a;
return 0;
end;
o procedura
create or replace procedure aud_clear_pro
as
begin
delete from a;
end;
è necessario eseguire il commit dopo l'eliminazione?
Non riesco a capire la seguente situazione:
Se chiamo la funzione / procedura dalla finestra SQL, allora richiede il commit
ma
Se pianifico la funzione / procedura utilizzando dbms_scheduler ed eseguo il lavoro, l'istruzione delete viene automaticamente impegnata.
PERCHÉ?