在pl/sql中执行下面sql
create or replace package PKG_Test
as
type ResultData is ref cursor;
procedure bb(Rst out ResultData);
procedure aa( auserid in int,Rst out ResultData);
end PKG_Test;
create or replace package body PKG_Test
as
procedure bb(Rst out ResultData)
is
begin
open Rst for select zyh from aaa;
end;
procedure aa( auserid in int,Rst out ResultData)
is
begin
open Rst for select zyh from aaa where aaa=auserid;
end;
end PKG_Test;
成功后在对象查看中总提示包有问题,错误内容 为Compilation errors for PACKAGE HISUSER.PKG_TEST
Error: PLS-00103: Encountered the symbol "CREATE"
Line: 9
Text: create or replace package body PKG_Test
这是什么原因
我用的是9i的

解决方案 »

  1.   

    为什么错了,在PL/SQL DEVELOPER都会有提示的
    自己写的程序,应该自己都能检查出错误SQL> create or replace package PKG_Test
      2  as
      3  type ResultData is ref cursor;
      4  procedure bb(Rst out ResultData);
      5  procedure aa( auserid in int,Rst out ResultData);
      6  end PKG_Test;
      7  /程序包已创建。SQL> create or replace package body PKG_Test
      2  as
      3  procedure bb(Rst out ResultData)
      4  is
      5  begin
      6  open Rst for select zyh from aaa;
      7  end;
      8  procedure aa( auserid in int,Rst out ResultData)
      9  is
     10  begin
     11  open Rst for select zyh from aaa where aaa=auserid;
     12  end;
     13  end PKG_Test;
     14  /警告: 创建的包体带有编译错误。SQL> CREATE TABLE AAA(ZYH NUMBER,AAA NUMBER);表已创建。SQL>  create or replace package body PKG_Test
      2   as
      3   procedure bb(Rst out ResultData)
      4   is
      5   begin
      6   open Rst for select zyh from aaa;
      7   end;
      8   procedure aa( auserid in int,Rst out ResultData)
      9   is
     10   begin
     11   open Rst for select zyh from aaa where aaa=auserid;
     12   end;
     13   end PKG_Test;
     14   /程序包体已创建。