连接上数据库了 一般的sql语句也没有问题
但是创建存储过程的时候就出问题了
create or replace procedure myproc1(a out int)
is
begin
select count(*) into a from aa;
end;
执行的时候可以顺利返回。
并且在eclipse上也可以看到这个存储过程
但是一调用就出错
declare
num int:=1;
begin
myproc1(num);
dbms_output.put_line(num);
end
错误提示:
declare
num int:=1ORA-06550: 第 2 行, 第 10 列: 
PLS-00103: 出现符号 "end-of-file"在需要下列之一时:
 * & = - + ; < / >
   at in is mod remainder not rem <an exponent (**)>
   <> or != or ~= >= <= <> and or like like2 like4 likec between
   || multiset member submultiset
Elapsed Time:  0 hr, 0 min, 0 sec, 0 ms.并且我用sqlplus登录进去查看的时候发现找不到这个存储过程
折腾了一晚上了 实在是受不了鸟
大哥大姐们 以上是小弟遇到的问题,帮忙解决一下,不胜感激!!!

解决方案 »

  1.   

    檢查一下eclipse中的連接用戶和存儲過程的所有者用戶是否同一用戶
      

  2.   

    连接用户是sys as sysdba
    sys创建存储过程并也用这个用户调用
      

  3.   

    不管什麼原因,最好不要在sys上建立任何object。
    你試一下其他用戶看行不?
      

  4.   

    declare
    num intORA-06550: 第 2 行, 第 7 列: 
    PLS-00103: 出现符号 "end-of-file"在需要下列之一时:
     := . ( @ % ; not
       null range default character
    Elapsed Time:  0 hr, 0 min, 0 sec, 0 ms.还是一样的错误
      

  5.   

    那你不要用eclipse了,用sqlplus試試吧
      

  6.   

    Think you all the same!
      

  7.   

    补充一下
    endORA-00900: 无效 SQL 语句
    (0 rows affected)
    Elapsed Time:  0 hr, 0 min, 0 sec, 0 ms.在建立存储过程的时候碰到这种错误
    看了一下 存储过程也没有建立起来
    在sqlplus中建立存储过程后
    eclipse中也无法运行