【发布时间】:2020-09-21 13:51:04
【问题描述】:
假设您在存储过程或函数中声明了一个表
DECLARE
lt_error "SCHEMA".err_log;
此表将包含我们正在执行的进程中出现的所有错误。 假设现在我已经填满了这张表,我想以某种方式遍历它的记录并对它们做一些事情。
SELECT * FROM "SCHEMA".err_log INTO lt_error.
ROLLBACK; -- Need to have this here.
LOOP through lt_error;
-- Do something with your record
END LOOP;
我知道我们可以使用游标循环,但由于 ROLLBACK,我现在不能使用游标。 底线是我需要保存在此过程中创建的日志表中的信息,并且 ROLLBACK 将销毁它。 甚至可能吗?如果是这样,有人可以指出我正确的方向吗? 谢谢
【问题讨论】:
标签: postgresql stored-procedures error-handling transactions