sql >> Databasteknik >  >> RDS >> Oracle

Användardefinierat undantag med anpassat meddelande

Genom att använda proceduren RAISE_APPLICATION_ERROR för att höja undantaget kan du koppla ett meddelande till felet:

DECLARE
  e EXCEPTION;

  PRAGMA EXCEPTION_INIT (e, -20100);
BEGIN
  RAISE_APPLICATION_ERROR(-20100, 'This is the user-supplied message');
EXCEPTION
  WHEN e THEN
    DBMS_OUTPUT.PUT_LINE('Caught e: ' || SQLCODE || ' ' || SQLERRM);
  WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('Caught something else: ' || SQLCODE || ' ' || SQLERRM);
END;

Dokumentation här - läs särskilt avsnittet "Definiera dina egna felmeddelanden:Procedur RAISE_APPLICATION_ERROR".

Dela och njut.




  1. Uppdatera flera rader i en tabell från en annan tabell när villkoret finns

  2. Hur hämtar jag kommentaren från en PostgreSQL-databas?

  3. MySQL - mysqldump --rutiner för att endast exportera 1 lagrad procedur (efter namn) och inte varje rutin

  4. arabisk text som lagras som ???