PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Manipulando EXCEPTION e retornando o resultado da função


A EXCEPTION cláusula precisa estar no mesmo bloco que a exceção.

Por exemplo:
CREATE OR REPLACE FUNCTION test_excep (arg integer)
  RETURNS integer
AS
$func$
DECLARE
   res INTEGER;
BEGIN

res := 100 / arg;

RETURN res;

EXCEPTION
    WHEN division_by_zero 
    THEN  RETURN 999;

END
$func$
LANGUAGE plpgsql;