Come posso evitare l'avviso di un parametro inutilizzato in PLSQ?
-
01-07-2019 - |
Domanda
A volte, in PL SQL è necessario aggiungere un parametro a un pacchetto, una funzione o una procedura per preparare funzionalità future.Per esempio:
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
Può portare a molti avvisi come
Compilation errors for FUNCTION APPUEMP_PRAC.DOGETMYACCOUNTMONEY
Error: Hint: Parameter 'Currency' is declared but never used in 'doGetMyAccountMoney'
Line: 1
Quale sarebbe il modo migliore per evitare questi avvertimenti?
Soluzione
Credo che questo sia controllato dal parametro PLSQL_WARNINGS, documentato per 10gR2 qui: http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams166.htm#REFRN10249
Altri suggerimenti
Se non avessi la possibilità di modificare i livelli di avviso, potresti semplicemente associare il valore del parametro a un valore fittizio e documentare che sono per un uso futuro.
Bene, il tuo esempio contiene diversi errori.Ancora più importante, dovresti cambiare "char" in "Currency" nell'istruzione IF;che, per quanto posso vedere, eviterebbe anche l'avvertimento.
Disabilita gli avvisi PL/SQL non gravi:
ALTER SESSION SET PLSQL_WARNINGS='ENABLE:SEVERE';
Bene, sei sicuro di avere il nome e il diritto nell'ordine corretto in quella dichiarazione?
Si lamenta di un parametro chiamato "Valuta", ma in realtà non lo stai utilizzando, vero?
D'altra parte, stai usando qualcosa chiamato car, che cos'è?
O forse la mia conoscenza di PL/SQL è lontana, in tal caso lascia un commento e lo eliminerò.