我在代码中使用了RAISE EXCEPTION’…’USING ERRCODE =’….’,因为我可以在我的C#代码中使用错误代码.但是,我想在我的plpgsql代码中使用它,如下所示:
BEGIN ... RAISE EXCEPTION 'Something is wrong' USING ERRCODE='S0001'; EXCEPTION WHEN 'S0001' THEN -- Handle code S0001 END;
但这不起作用.如何在plpgsql中捕获并处理我自己抛出的异常?
解决方法
您的异常处理子句应如下所示:
EXCEPTION WHEN sqlSTATE 'S0001' THEN ... END;