Иногда в 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
Как лучше всего избежать этих предупреждений?
Хорошо, вы уверены, что у вас есть имя и права в правильном порядке в этом объявлении?
Он жалуется на параметр с именем «Валюта», но вы на самом деле его не используете, не так ли?
С другой стороны, вы используете что-то под названием символ, что это?
Или, возможно, я плохо разбираюсь в PL / SQL, если да, оставьте комментарий, и я удалю его.
Что ж, в вашем примере есть несколько ошибок. Наиболее важно то, что вам нужно будет изменить «char» на «Currency» в операторе IF; что, насколько я вижу, также позволит избежать предупреждения.
Я считаю, что это контролируется параметром PLSQL_WARNINGS, описанным для 10gR2 здесь: http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams166.htm#REFRN10249
Отключить несерьезные предупреждения PL / SQL:
ALTER SESSION SET PLSQL_WARNINGS='ENABLE:SEVERE';
Если у вас не было возможности изменять уровни предупреждений, вы могли бы просто привязать значение параметра к фиктивному значению и задокументировать, что они предназначены для использования в будущем.
Дэвид, твой ответ неплох. Полезно и неочевидно. Но я бы хотел избежать этого только выборочно. На некоторых языках вы можете добавить некоторые метаданные, чтобы помочь компилятору. Может быть, это невозможно.