当我在存储过程中执行此操作时:
create procedure Proc1(
startdate IN TIMESTAMP,
ENDDATE IN TIMESTAMP
)
declare test_result number --line 55
test_result:=Stored_function1(startdate,enddate,11,13); --line 56
END;
SQL Developer抛出2个错误:
PLS-00103:当遇到以下情况之一时遇到符号“TEST_RESULT”:: =。 (@%;非空范围默认字符符号“。”代替“TEST_RESULT”继续。
PLS-00103:遇到以下其中一项时遇到符号“END”:begin function pragma procedure子类型当前游标删除存在
Stored_function1
是用户定义的,有4个参数,不属于任何包。我哪里做错了,我该如何纠正?感谢。
答案 0 :(得分:3)
没有看到更多它很难说,但似乎你的程序中有一些语法错误。不需要DECLARE
,第55行末尾应该有一个分号,而第56行应该有BEGIN
。
这是一个基本的骨架:
Create or replace procedure my_procedure as
test_result number;
BEGIN
test_result := Stored_function1(startdate, enddate, 11, 13);
END;