使用编译错误创建的过程

时间:2012-10-30 11:03:26

标签: stored-procedures plsql oracle10g oracle11g plsqldeveloper

以下是我创建的程序。当我执行它时,我得到" 使用编译错误创建的过程"我不明白我在下面的程序代码中错误的地方,有人通过在代码中找到错误来帮助我

create or replace PROCEDURE newprocedur(inMerid IN VARCHAR2,outCount OUT NUMBER) AS  
  CURSOR c1 IS 
    select CLIENT_COUNT 
     from OP_TMER_CONF_PARENT 
    where MER_ID = inMerid 
    FOR UPDATE OF CLIENT_COUNT;
BEGIN
  Open c1
  loop
    fetch c1 into outCount;
    exit when c1%NOTFOUND;
    outCount:=outCount+1;
    update OP_TMER_CONF_PARENT 
       set CLIENT_COUNT = outCount 
     where current of c1;
  end loop;
  close c1;
END;

提前致谢

2 个答案:

答案 0 :(得分:3)

1-检查错误并查看错误的位置 见here

2-你错过​​了第5行的分号 - 应该是

Open c1;

答案 1 :(得分:1)

在SQL * Plus中,您可以使用命令

show errors

显示刚刚编译的PL / SQL代码中的错误。见http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch12041.htm

我不熟悉PL / SQL Developer,但TOAD会自动执行此操作并向您显示错误,以便您快速跳转到包含错误的行。