1:   create  or replace body my_pkg
2: as
3:  g_variable varchar2(25);
4: procedure p(p_variable in varchar2)
5:  is
6:   l_variable varchar2(25);
7: begin
8:  null;
9:end;
10:end;
11:/警告:创建的包体带有编译错误.SQL>show errors;
PACKAGE BODY MY_PKG 出现错误
LINE/COL ERROR
-------- -----------------------------------------------------------
0/0      PL/SQL: Compilation unit analysis terminated
1/14     PLS-00201: 必须声明标识符 'MY_PKG'
1/14     PLS-00304: 如果没有说明, 则无法编译 'MY_PKG' 主体请教一下大家这有什么错误,如何修改

解决方案 »

  1.   

    创建包的语法不是那样建吧?
    create or replace package my_pkg 
    as
    ...................
      

  2.   

      哦!我写掉了一个东西,我是那样写的报错啊!1:  create  or replace package body my_pkg 
    2: as 
    3:  g_variable varchar2(25); 
    4: procedure p(p_variable in varchar2) 
    5:  is 
    6:  l_variable varchar2(25); 
    7: begin 
    8:  null; 
    9:end; 
    10:end; 
    11:/ 警告:创建的包体带有编译错误. SQL>show errors; 
    PACKAGE BODY MY_PKG 出现错误 
    LINE/COL ERROR 
    -------- ----------------------------------------------------------- 
    0/0      PL/SQL: Compilation unit analysis terminated 
    1/14    PLS-00201: 必须声明标识符 'MY_PKG' 
    1/14    PLS-00304: 如果没有说明, 则无法编译 'MY_PKG' 主体 请教一下大家这有什么错误,如何修改
      

  3.   

    CREATE OR REPLACE PACKAGE test_pkg
    AS
       g_variable   VARCHAR2 (25);   PROCEDURE p (p_variable IN VARCHAR2);
    END;CREATE OR REPLACE PACKAGE BODY my_pkg
    AS
       PROCEDURE p (p_variable IN VARCHAR2)
       IS
          l_variable   VARCHAR2 (25);
       BEGIN
          NULL;
       END;
    END;变量定义在包头中
      

  4.   

    我按照楼上的那样写的还是报错啊!SQL> create or replace package test_pkg
      2  as
      3   g_variable varchar2(25);
      4  procedure p(p_variable in varchar2);
      5  end;
      6  
      7  create or replace package body my_pkg
      8  as
      9   procedure p(p_variable in varchar2)
     10  is
     11    l_variable varchar2(25);
     12  begin
     13   null;
     14  end;
     15  end;
     16  /警告: 创建的包带有编译错误。SQL> show error;
    PACKAGE TEST_PKG 出现错误:LINE/COL ERROR
    -------- --------------------------------------
    7/1      PLS-00103: 出现符号 "CREATE"
    SQL> 
      

  5.   

    SQL> create or replace package my_pkg
      2  as                              
      3      g_variable varchar2(25);
      4      procedure p( p_variable in varchar2 );
      5  end my_pkg;
      6  /Package created.SQL> create or replace package body my_pkg
      2  as
      3    g_variable varchar2(25);
      4    procedure p( p_variable in varchar2 )
      5    is
      6    begin
      7       null;
      8    end;
      9  end my_pkg;
     10  /Package body created.
      

  6.   

    create or replace package test_pkg
    as
    g_variable varchar2(25);
    procedure p(p_variable in varchar2);
    end test_pkg;create or replace package body test_pkg
    as
    procedure p(p_variable in varchar2)
    is
    begin
    null;
    end;
    end test_pkg;