Announcement

Collapse
No announcement yet.

Exception in Select abfangen?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Exception in Select abfangen?

    Hallo Zusammen,

    kann mir einer sagen, wenn ich in einem Select-Statement eine Funktion aufrufe und die wiederum mir eine Exception wirft. Ich irgendwie die Exception abfangen kann, also z.B. wenn Exception auftritt, dann mach NULL draus?

    Beispiel:
    Select Artikelnr, Kontigent, Hat_Kontigent_Seit(ArtikelNr)
    From Tabelle
    Where Artikelnr IN (....);

    Die Funktion "Hat_Kontigent_Seit()" liefert mir dann ein Datum wieder oder eine Exception, kann ich dann sagen, wenn Exception dann mache NULL oder so draus?

    Vielen Dank schon mal für die Hilfe!

    MFG, ZeroCool

  • #2
    Ich denke Du musst Dir eine sichere zweite Funktion bauen die die erste aufruft und bei einer Exception null zurückgibt. In PL/SQL sollte das ja problemlos möglich sein. Ich denke nicht dass in SQL Exception Handling vorgesehen ist.

    Beispiel:
    Code:
    function MySafeFunction() -- same signature as the other function
    return <YourReturnType> is
      returnValue <YourReturnType>;
    begin
      begin
        returnValue := MyFunction();
      exception
        when MY_EXCEPTION then -- test on your exception
          returnValue := null; -- return null when exception occured
      end;
    
      return returnValue;
    end MySafeFunction;
    Wenn es nicht schlimm ist wenn ein Fehler auftritt und immer NULL zurückgegeben werden kann dann sollte man sich auch überlegen das gleich zu machen.
    Zuletzt editiert von fanderlf; 13.05.2011, 09:27.

    Comment


    • #3
      Alles klar, das hatte auch schon so Gedacht bzw. mir als Lösung überlegt.

      Dachte, dass es doch vieleicht etwas gibt, wovon ich noch nicht weiß ^^

      Aber vielen Dank für die Antwort

      Comment

      Working...
      X