What is the problem with this package as it is giving an error?
CREATE OR REPLACE PACKAGE PKG_SHOW_CUST_DETAILS AS PROCEDURE SHOW_CUST_DETAILS( myArg VARCHAR2); END PKG_SHOW_CUST_DETAILS; CREATE OR REPLACE PACKAGE BODY PKG_SHOW_CUST_DETAILS AS PROCEDURE SHOW_CUST_DETAILS(myArg VARCHAR2) IS BEGIN DBMS_OUTPUT.PUT_LINE(myArg); END SHOW_CUST_DETAILS; END PKG_SHOW_CUST_DETAILS; /
On compilation of the above script, I am getting the following errors:
SQL> show errors Errors for PACKAGE PKG_SHOW_CUST_DETAILS: LINE/COL ERROR -------- ----------------------------------------------------------------- 6/1 PLS-00103: Encountered the symbol "CREATE"
The package is very simple and I am not able to compile it. I searched earlier answers on this error message and none of them did solve my problem. I am consistently getting this error for 2 more packages and I am stuck on this error message no matter what I do. I even tried to strip everything to the barest minimum as shown above, but the error message does not seem to go away. BTW I am executing this on command line SQL plus session after logging into my Oracle 11G database. YES- SET SERVEROUTPUT ON -- is executed and the error message has nothing to do with this command.
What am I missing?
You have used elseif which in terms of PL/SQL is wrong. That need to be replaced with ELSIF . So your code should appear like this.
At line 5 there is a /
missing.
There is a good answer on the differences between ;
and /
here.
Basically, when running a CREATE
block via script, you need to use /
to let SQLPlus know when the block ends, since a PL/SQL block can contain many instances of ;
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With