Chamando procedimentos armazenados usando
execute como acima é específico do SQL*Plus. Na verdade, o SQL*Plus converte execute some_proc() em BEGIN some_proc(); END; , você pode ver isso tentando chamar um procedimento que não existe:SQL> execute some_proc()
BEGIN some_proc(); END;
*
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00201: identifier 'SOME_PROC' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored