postgres异常处理

postgres exception handling

我有一个带有多个查询的 postgresql 函数来验证 table data.But 如果其中一个查询发生错误,整个函数过程就会停止。但我想要的是,它应该通过发出警告错误而不是转义错误并继续执行其他查询来打印错误。

--Begin function
   BEGIN
    ----- query 1--------
   EXCEPTION 
     WHEN others THEN    
       ------------------'Exception in query 1';------------
   END;

   BEGIN
    ------------------------ Query 2---------------------
   EXCEPTION 
     WHEN others THEN    
      -------------------'Exception in query 2';-------------------
   END;
--End function

这是我在其中使用异常的代码,但我在函数中有超过 100 个查询,所以我必须将每个查询都放在异常中 block.And 我正在寻求其他一些简单的方法来解决这个问题。

您可以使用嵌套块来处理某些代码片段抛出的异常,如下所示:

--Begin function
   BEGIN
    --Validation query 1
   EXCEPTION 
     WHEN others THEN    
       RAISE INFO 'Exception in query 1';
   END;

   BEGIN
    -- Query 2
   EXCEPTION 
     WHEN others THEN    
       RAISE INFO 'Exception in query 2';
   END;
--End function