Rückmeldung von Fehlercodes in der Oracle-Gespeicherte Prozedur
Das unten stehende Verfahren (in Oracle 11g release 1) akzeptiert ein sql als parameter & liefert den return-code.
Gibt 0 zurück, wenn der Erfolg
Gibt 1 zurück, wenn kein update oder keine löschen führt
Gibt der Fehler-code im Fehlerfall.
Wie kann ich das ändern unten stehende Verfahren, um die Rückkehr der anderen aus mir param sagen "return_message" enthalten kurze Beschreibung der oracle-interne Fehlermeldung? Im Falle des Erfolgs, es sollte sagen, "Erfolg" und im Fall nicht löschen/updates durchgeführt, es sollte sagen: "nochange"
CREATE OR REPLACE PROCEDURE "demo"."run_demo"(v_sql IN VARCHAR2, return_code OUT number)
AS
i number;
BEGIN
return_code := 0;
execute immediate v_sql;
i := sql%rowcount;
IF (i<1)
THEN return_code := 1;
END IF;
EXCEPTION
WHEN OTHERS THEN
return_code := SQLCODE;
END;
InformationsquelleAutor Mike | 2011-12-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Möchten Sie verwenden die Funktion SQLERRM.
Hier ist dein code:
InformationsquelleAutor Daniel Haviv
Können Sie versuchen, mit SQLERRM Rückgabe der Meldung. E. g.,
InformationsquelleAutor John Doyle