运行程序时出错PLS-00103

时间:2017-10-15 10:17:52

标签: oracle plsql oracle10g procedure

我是plsql中的新手,并试图实现一个使用过程来执行某些任务的代码。我正在使用oracle 10g。我已经创建了一个名为stu_pack的包,我正在尝试创建包体但是徒劳无功。请帮助。 我想制作一个程序,为学生提供给定课程名称的详细信息。 代码如下。

错误信息是:

  

第14行的错误:PLS-00103:遇到符号"程序"什么时候   期待以下之一:;删除之前存在

     

符号&#34 ;;"取代了" PROCEDURE"继续。

     

创建或替换包体stu_pack为      procedure proc1(cname IN number)as      l_cname number(2);

    CREATE OR REPLACE PACKAGE BODY stu_pack AS

    PROCEDURE proc1 (
        cname IN NUMBER
    ) AS

        l_cname   NUMBER(2);
        cur1      student%rowtype;
        CURSOR c1 IS SELECT
            s.*
                     FROM
            student s,
            course c,
            learn l
                     WHERE
            c.cname = l_cname
            AND   c.cid = l.cid
            AND   s.sid = l.sid;

    BEGIN
        OPEN c1;
        LOOP
            FETCH c1 INTO cur1;
            EXIT WHEN c%notfound;
            dbms_output.put_line('student roll number:'
            || cur1.sid
            || ' student 
          name:'
            || cur1.sname
            || ' phone number:'
            || cur1.phone);

        END LOOP;

        CLOSE c1;
    END procedure proc1;

END stu_pack;
/

1 个答案:

答案 0 :(得分:0)

您需要更改行end procedure proc1;

应该只是

end;

end proc1;