2

有时,在 PL SQL 中,您希望将参数添加到包、函数或过程中,以便为将来的功能做好准备。例如:

create or replace function doGetMyAccountMoney( Type_Of_Currency IN  char := 'EUR')   return number 
is
  Result number(12,2);
begin
 Result := 10000;  
IF char <> 'EUR' THEN
   -- ERROR NOT IMPLEMENTED YET
  END IF;  
    return(Result);
end doGetMyAccountMoney;also 

它可能会导致很多警告,例如

Compilation errors for FUNCTION APPUEMP_PRAC.DOGETMYACCOUNTMONEY
Error: Hint: Parameter 'Currency' is declared but never used in 'doGetMyAccountMoney'
Line: 1

避免这些警告的最佳方法是什么?

4

5 回答 5

3

我相信这是由参数 PLSQL_WARNINGS 控制的,这里记录了 10gR2:http: //download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams166.htm#REFRN10249

于 2008-09-17T15:57:56.153 回答
2

如果您无法更改警告级别,您只需将参数值绑定到一个虚拟值并记录它们以供将来使用。

于 2008-09-17T23:53:36.370 回答
1

好吧,您的示例有几个错误。最重要的是,您需要在 IF 语句中将“char”更改为“Currency”;据我所知,这也可以避免警告。

于 2008-09-17T15:46:41.873 回答
1

禁用非严重 PL/SQL 警告:

ALTER SESSION SET PLSQL_WARNINGS='ENABLE:SEVERE';
于 2008-09-17T23:43:29.297 回答
0

那么,您确定您在该声明中具有正确顺序的名称和权利吗?

它抱怨一个名为“货币”的参数,但您实际上并没有使用它,是吗?

另一方面,您正在使用一种叫做char的东西,那是什么?

或者也许我对 PL/SQL 的了解还很遥远,如果是这样,请发表评论,我将删除它。

于 2008-09-17T15:45:15.437 回答