在plsql中执行存储过程总是报ORA 00900错误,代码如下:

create or replace procedure p_test(bm0 in varchar2, mc0 in varchar2) is
begin
insert into a1 (bm,mc) values (bm0,mc0);
end p_test;

--执行
exec p_test('A22', 'ssss') --执行存储过程时,报ORA-00900:无效SQL语句的错

这问题是什么原因导致的,请大家帮帮忙,在线等。。。

begin
p_test('A22', 'ssss');
end;

这么执行

顺便说一句,insert into后要commit
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-28
先单独执行insert into a1 (bm,mc) values (bm0,mc0)试试

在plsql中执行存储过程总是报ORA 00900错误,代码如下:
begin p_test('A22', 'ssss');end;这么执行 顺便说一句,insert into后要commit

在plsql中执行如下语句报错信息为:oracle ora-00900:invalid sql statem...
首先,exp 不是sql.要在命令行下执行。其次。你这导出写的真诡异。即要导出表,又指定了全库导出。 directory 和 dumpfile都是expdp的参数,你却用了exp。 而且dumpfile的名字还没有后缀!

...hen\/520 @H file=d:\/daochu.dmp ignore=y 出现错误‘ora-00900...
直接在cmd里面导,首先去到oracle bin目录下,找到imp然后再执行此命令

怎么一执行execute p_stu;oracle就报一个 ora00900;
如果在PLSQL里面执行的话,SQL窗口用CALL 命令窗口用 你写得execute我都测试了没问题 SQL> execute p_stu;PL\/SQL procedure successfully completed SQL>

怎么一执行execute p_stu;oracle就报一个 ora00900;
楼主应该是在PLSQL Developer 中执行吧?在这里是不能直接执行存储过程的 必须在dos下 或linux下才可以 希望解决了楼主的问题,不懂随时来问我

相似回答