¿Cómo puedo evitar la advertencia de un parámetro no utilizado en PLSQ?
-
01-07-2019 - |
Pregunta
A veces, en PL SQL desea agregar un parámetro a un paquete, función o procedimiento para preparar funciones futuras.Por ejemplo:
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
Puede generar muchas advertencias como
Compilation errors for FUNCTION APPUEMP_PRAC.DOGETMYACCOUNTMONEY
Error: Hint: Parameter 'Currency' is declared but never used in 'doGetMyAccountMoney'
Line: 1
¿Cuál sería la mejor manera de evitar esas advertencias?
Solución
Creo que esto está controlado por el parámetro PLSQL_WARNINGS, documentado para 10gR2 aquí: http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams166.htm#REFRN10249
Otros consejos
Si no tuviera la capacidad de alterar los niveles de advertencia, podría simplemente vincular el valor del parámetro a un valor ficticio y documentar que son para uso futuro.
Bueno, tu ejemplo tiene varios errores.Lo más importante es que necesitaría cambiar "char" a "Currency" en la declaración IF;lo que hasta donde puedo ver también evitaría la advertencia.
Deshabilite las advertencias PL/SQL no graves:
ALTER SESSION SET PLSQL_WARNINGS='ENABLE:SEVERE';
Bueno, ¿estás seguro de que tienes el nombre y el derecho en el orden correcto en esa declaración?
Se queja de un parámetro llamado 'Moneda', pero en realidad no lo estás usando, ¿verdad?
Por otro lado, estás usando algo llamado carbonizarse, ¿qué es eso?
O tal vez mi conocimiento de PL/SQL esté muy lejos, si es así, deja un comentario y lo eliminaré.