我似乎无法在pl / sql函数中声明变量?

时间:2011-01-12 11:56:40

标签: oracle syntax plsql

这是一个非常简单的问题,但我似乎无法在任何地方找到这种语法。

我有这样的事情:

FUNCTION some_function
(
t_string IN VARCHAR2
) RETURN NUMBER IS

some_variable NUMBER;

BEGIN
//logic
END some_function;

它命中some_variable声明并告诉我它期待“语言”在哪里/如何声明变量?我见过以这种方式做过的例子,但由于某些原因它不起作用。

非常感谢, 河豚

2 个答案:

答案 0 :(得分:5)

未声明您的声明变量:

create or replace FUNCTION some_function
(
t_string IN VARCHAR2
) RETURN NUMBER 
IS
some_variable NUMBER;

BEGIN

return some_variable;

END some_function;

按预期返回NULL:

select some_function('ff') from dual  

答案 1 :(得分:2)

问题是你的函数声明中没有CREATE OR REPLACE关键字,如@ Michael的回答所示。