Chiamare le stored procedure utilizzando execute come sopra è specifico per SQL*Plus. Infatti, SQL*Plus converte execute some_proc() in BEGIN some_proc(); END; , Puoi verificarlo da solo tentando di chiamare una procedura che non esiste:
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