Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PLS-00103: Encountered the symbol "" when expecting one of the following #2785

Closed
rcperezg opened this issue Jan 13, 2018 · 7 comments
Closed

Comments

@rcperezg
Copy link

When I execute a block like this in Oracle 12, everything is OK:

DECLARE 
x NUMBER;
BEGIN
dbms_output.put_line('HI EVERYBODY');
END;

But in Oracle 9 I get an error:

SQL Error [6550] [65000]: ORA-06550: line 1, column 9:
PLS-00103: Encountered the symbol "" when expecting one of the following:

begin function package pragma procedure subtype type use
form
current cursor

This is an example (I know x is not used). It doesn't work with more complex blocks.

Any idea?

@ajperez81
Copy link

I'm having the same problem with Oracle 10g (10.2) and DBeaver 5.0.0.
The script works fine with SQL*Plus and 10g.

@lucacicinelli
Copy link

lucacicinelli commented Apr 13, 2018

Same error with Oracle 10g and DBeaver 5.0.2. No issue with SQLDeveloper.

BEGIN DBMS_SCHEDULER.RUN_JOB(job_name => '"WELF"."JOB_REFRESH_MV"', USE_CURRENT_SESSION => FALSE); END;

--- or ---
BEGIN DBMS_SCHEDULER.RUN_JOB(job_name => 'WELF.JOB_REFRESH_MV', USE_CURRENT_SESSION => FALSE); END;

Errore SQL [6550] [65000]: ORA-06550: line 1, column 6:
PLS-00103: Encountered the symbol "" when expecting one of the following:

   begin case declare exit for goto if loop mod null pragma
   raise return select update while with <un identificativo>
   <un identificativo delimitato da virgolette>
   <una bind variable> << close current delete fetch lock insert
   open rollback savepoint set sql execute commit forall merge
   pipe
The symbol "" was ignored.

NO ISSUE IF I REMOVE THE CRLF:

BEGIN DBMS_SCHEDULER.RUN_JOB(job_name => 'WELF.JOB_REFRESH_MV', USE_CURRENT_SESSION => FALSE); END;

@serge-rider
Copy link
Member

Perhaps it is related to Windows CR/LF.
Could you try to:

  • Open SQL editor with your query
  • main menu File->Convert Line Delimiters To->Unix

If this will help then I'll try to add some workaround for Oracle < 10.

@rcperezg
Copy link
Author

If I replace Line delimiters no errors appear, but dbms_output does'n't write anything at Output tab.

@serge-rider
Copy link
Member

I've pushed the fix (specifically for Oracle 10 and earlier).
Please check it in EA version (https://dbeaver.jkiss.org/files/ea/)

@serge-rider
Copy link
Member

I presume that this was fixed.

@CengBeng
Copy link

CengBeng commented Dec 6, 2018

ı'have got same error

DECLARE

--Declare variables
nValue		NUMBER(10) := &enter_value;
vMessage	VARCHAR(30);

BEGIN
--Test the value entered by the user
IF nValue > 60000 THEN

	--Set and display the message
	vMessage := q'!The value isn't valid.!';
	dbms_output.put_line(vMessage);

END IF;

END;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants