Fehlermeldungen eines SQL Scriptes abfangen.



  • Ich habe ein SQL Script mit mehreren Statements geschrieben. Wenn ich das Script z.B. unter SQL*Plus starte und eines dieser Statements eine Fehlermeldung hervorruft, dann wird immer nur die Zeilennr. des fehlerhaften Statements angezeigt. Das bringt mir aber reichlich wenig, wenn ich dann im Script nach dem "richtigen" fehlerhaften Statement suchen muss.
    Wie kann ich das lösen, damit ich weiß welches Statement eine Fehlermeldung hervorgerufen hat. Ich dachte an sowas, wie ein Abfangen der Fehlermeldung und beim Zutreffen eines Fehlers eine eigene Promtausgabe zu geben. Aber wie mach ich sowas?

    Vielen dank für eure Tipps.

    Dennis



  • Da die Rede von SQL Plus ist gehe ich davon aus dass du Oracle verwendest.
    Dann machs so:

    SET SERVEROUTPUT ON SIZE 10000;
    DECLARE

    v_errormessage VARCHAR2(512) := '';

    BEGIN

    <hier deine SQL Statements>

    EXCEPTION WHEN OTHERS THEN

    v_errormessage := SQLERRM;
    DBMS_OUTPUT.PUT_LINE('Fehlermeldung: ' || v_errormessage);

    END;


Anmelden zum Antworten