Erro Oracle PLS-00103

03/julho/2012 - Oracle

Olá,

Tive um erro chato de resolver em pl/sql esses dias.

Eis o erro:

13:53:58 SQL> @proc_teste

Warning: Procedure created with compilation errors.

SP2-0042: unknown command “end” – rest of line ignored.

Warning: Procedure created with compilation errors.

Errors for PROCEDURE PROC_TESTE:
Pressione [Enter] para continuar…

LINE/COL ERROR
——– —————————————————————–
12/33    PLS-00103: Encountered the symbol “end-of-file” when expecting
one of the following:
:= . ( % ;

Eis a procedure (é apenas um exemplo, a verdadeira tinha muito mais linhas):

set verify off
create or replace
— versao: 1.00
procedure proc_teste(p_exemplo in varchar2)is
———————————————
— Comentario ….: Procedure de exemplo


— Parametros ….:
—    p_exemplo    – parametro exemplo



begin
dbms_output.put_line(‘Exemplo’);

end;
/
show errors procedure proc_teste
set verify on
show user

O problema que o sqlplus encrenca com o comentário entre o create or replace e o procedure, no plsql developer funciona de boa.Veja abaixo o trecho problemático:

create or replace
— versao: 1.00
procedure proc_teste(p_exemplo in varchar2) is

A solução é simples, é só retirar o comentário dali. Coisa boba mas perdi um tempão para achar isso.

até mais,

Roberto

Share


2 comentários

  1. #
    Danpirocation Plus
    maio 9th, 2016 at 18:57

    Me parece que entre o CREATE OR REPLACE até o fim da declaração da procedure é uma expressão só, independente de quebras de linha.
    É o mesmo que você em uma linguagem de programação qualquer inserir um comentário do tipo

    OK:
    x = 3; // comentario

    ERRADO:
    x
    // comentario
    = 3;

    que é o mesmo que
    x // comentario = 3;

    Responda a esse comentário
  2. #
    Luti Pires
    agosto 10th, 2017 at 10:24

    Também perco muito tempo com coisas simples, chega a dar raiva HAHAHA

    Responda a esse comentário

Deixe um comentário