这是我的代码
CREATE OR REPLACE FUNCTION test_excep (arg INTEGER) RETURNS INTEGER
AS $$
DECLARE res INTEGER;
BEGIN
res := 100 / arg;
BEGIN
EXCEPTION
WHEN division_by_zero
THEN RETURN 999;
END;
RETURN res;
END;
$$
LANGUAGE plpgsql;
也就是说,如果发生被零除,我需要返回“999”,但是:SELECT test_excep(0)
返回错误: division by zero
CONTEXT: PL/pgSQL function test_excep(integer) line 4 at assignment
我的代码有什么问题?