Fehler(357,1): PLS-00201: Bezeichner 'DBMS_OUTPUT.PUT_LINE' muss deklariert werden
Schreibe ich einfach Oracle-Funktion liefert die Ausgabe. Ich habe einen Fehler in dieser Zeile:
DBMS_OUTPUT.PUT_LINE(LINE);
Error(357,1): PLS-00201: identifier 'DBMS_OUTPUT.PUT_LINE' must be declared
Sieht aus wie es ist, keine Berechtigung habe ich versucht zu geben, und alle Privilegien auf den Benutzer, den ich verwende.
Können Sie mir einen Rat geben wie das problem zu lösen?
- grant execute on DBMS_OUTPUT zu username;
- Was ist der Typ von
LINE
? Können Sie mehr code zeigen? - Es ist erklärte LINIE CLOB;
- Ich kann nicht versuchen jetzt auf meinem system. Versuchen Sie, die Ausgabe
VARCHAR2
Wert. Soweit ich mich erinnere, in einem Fall von falschen Typ gibt es andere Fehler, aber ich bin mir nicht sicher. - Es wird implizit konvertiert ein CLOB zu einem
varchar2
, solange es nicht zu groß ist (so hier); aber wenn er Sie bekommen würde einen anderen Fehler, ja. Ungültige Bezeichner bedeutet es nicht verstehendbms_output
, eher als ein problem mit der Vorgehensweise, die in diesem Paket. So scheint es wahrscheinlich, ist es umgeben von code zu dem Fehler führen, oder ein Berechtigungen-problem; ungewöhnlich, verlor die Privilegien, obwohl. - Welche version von Oracle?
- Oracle 11g express edition
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie nicht-ANSI-Buchstaben im Namen "DBMS_OUTPUT". Nach Ihren Namen ich Wette, auf Russischen Buchstaben 'ВМОТР'.