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