首页 文章

PLS-00103:遇到符号“CREATE”

提问于
浏览
27

这个包有什么问题,因为它出错了?

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;
/

在编译上面的脚本时,我收到以下错误:

SQL> show errors
Errors for PACKAGE PKG_SHOW_CUST_DETAILS:

LINE/COL ERROR
-------- -----------------------------------------------------------------
6/1      PLS-00103: Encountered the symbol "CREATE"

包很简单,我无法编译它 . 我在这个错误消息上搜索了早期的答案,但没有一个能解决我的问题 . 我一直在为另外2个包收到此错误,无论我做什么,我都会遇到此错误消息 . 我甚至尝试将所有内容剥离到最小的最小值,如上所示,但错误消息似乎没有消失 . BTW我在登录Oracle 11G数据库后在命令行SQL plus会话上执行此操作 . 是 - SET SERVEROUTPUT ON - 执行,错误消息与此命令无关 .

我错过了什么?

2 回答

  • 44

    在第5行,缺少 / .

    ;/ here之间的差异有一个很好的答案 .

    基本上,当通过脚本运行 CREATE 块时,需要使用 / 让SQLPlus知道块何时结束,因为PL / SQL块可以包含许多 ; 的实例 .

  • -3

    分别运行包声明和主体 .

相关问题