我有这个简单的存储过程,我在PL / SQL中编写和执行。
CREATE OR REPLACE PROCEDURE test_sp
IS
BEGIN
dbms_output.put_line('Test');
END;
我试图像这样在PL / SQL中调用它:
CALL test_sp;
但我最终得到了这个错误:
ORA-06576: not a valid function or procedure name
这是一个简单的调用,是否存在语法错误或者我是否缺少某种权限?
答案 0 :(得分:4)
如果您使用call
,则需要包括括号。 oracle docs show call
使用以下内容:
call test_sp();
或者您可以使用exec
:
exec test_sp;
或者您可以将存储过程名称包装在匿名块中:
begin
test_sp;
end;