Wie kann ich die Warnung von einem nicht verwendeten Parameter in PL SQL vermeiden?
-
01-07-2019 - |
Frage
Manchmal, in PL SQL wollen Sie einen Parameter zu einem Paket, Funktion oder Prozedur hinzufügen, um zukünftige Funktionen vorzubereiten. Zum Beispiel:
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
Es kann wie
zu viele Warnungen führenCompilation errors for FUNCTION APPUEMP_PRAC.DOGETMYACCOUNTMONEY
Error: Hint: Parameter 'Currency' is declared but never used in 'doGetMyAccountMoney'
Line: 1
Was wäre der beste Weg, um diese Warnungen zu vermeiden?
Lösung
Ich glaube, dass dies durch den Parameter PLSQL_WARNINGS gesteuert wird, dokumentiert für 10gR2 hier: http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams166.htm#REFRN10249
Andere Tipps
Wenn Sie nicht die Möglichkeit haben, die Warnstufen zu verändern, könnten Sie einfach den Parameterwert auf einen Dummy-Wert binden und zu dokumentieren, dass sie für die späteren Gebrauch sind.
Nun, Ihr Beispiel hat mehrere Fehler. Am wichtigsten ist, würden Sie brauchen, „char“ zu „Currency“ in der IF-Anweisung zu ändern; die, soweit ich sehen kann, würde auch die Warnung vermeiden.
Deaktivieren nicht-schwere PL / SQL-Warnungen:
ALTER SESSION SET PLSQL_WARNINGS='ENABLE:SEVERE';
Nun, sind Sie sicher, dass Sie den Namen und das Recht, in der richtigen Reihenfolge in dieser Erklärung haben?
Es beschwert sich über einen Parameter ‚Währung‘ genannt, aber sie sind nicht wirklich mit ihm, sind Sie?
Auf der anderen Seite sind Sie mit etwas namens char , was ist denn das?
Oder vielleicht mein Wissen über PL / SQL ist ab Art und Weise, wenn ja, um einen Kommentar hinterlassen und ich werde diese löschen.