ORA-01403 (Keine Daten gefunden) passiert, wenn Ihre Abfrage nichts zurückgibt und Sie versuchen, es über INTO an die Variable zu übergeben .
ORA-01422 (Zu viele Zeilen) tritt auf, wenn Ihre Abfrage mehr als eine Zeile zurückgibt, die Sie bei INTO einpassen möchten .
Sie handhaben den no_data_found aus dem ersten SELECT Abfrage, aber Sie verarbeiten too_many_rows nicht ab der ersten Abfrage. Wenn Ihr erster SELECT Abfrage wirft ein no_data_found Ausnahme, sie wird von der EXCEPTION behandelt , andernfalls, wenn es too_many_rows auslöst Ausnahme, dann schlägt es als zweites Bild fehl.
Wo ist also der no_data_found Ausnahme passiert? Wahrscheinlich von Ihnen zweites SELECT Abfrage.
Sie sollten das erste SELECT wiederholen Abfrage, um ein no_data_found zu vermeiden oder ein too_many_rows und stellen Sie sicher, dass Ihr zweiter SELECT Abfrage gibt immer 1 Zeile zurück.